Как переопределить событие onclick тега select HTML?

Я превысил событие click на моем теге select. Когда я нажимаю на свой тег select по умолчанию, отображается список опций. Но я должен настроить этот список и выполнять некоторые другие работы, когда я нажимаю на тег select.

Как я могу это достичь?

см. ниже код:

    Volvo Saab Opel Audi   document.getElementById("selectId").onclick = function () { alert("second event"); }    

Здесь оба события увольняются, но я хочу только второе событие.

Вы не можете переопределить элемент select onClick потому что его нет. Когда вы нажимаете на кнопку select браузер обрабатывает ее с помощью магии, с которой вы не можете справиться. Вы не можете имитировать клик на нем.

Единственное, что вы можете сделать для выбора:

  • измените его свойство size . Вы можете изменить его на 1 чтобы закрыть его, но вы увидите уродливое мерцание.
  • установить hidden свойство для всех дочерних элементов-элементов в true

Вы можете подделать это, что-то вроде этого:

http://jsfiddle.net/BupuU/3/

HTML:

 
Volvo

Javascript:

 $('.wrapper').click( function(event){ console.log("sdsd"); if(true){ $('#selectId').show(); $(".mask").hide(); } event.stopPropagation(); }); $('body').click(function(){ $('#selectId').hide(); $(".mask").show(); }); 

CSS:

 .mask{ position:absolute; top:0; width:100%; height:100%; text-align:center; } .wrapper{ position:relative; display:inline-block; min-height:23px; min-width:62px; vertical-align:top; overflow:hidden; border:solid grey 1px; } #selectId{ display:none; padding:20px; margin:-18px -30px -18px -8px; } 

Это только отправная точка. Вы можете построить здесь.