$ ("опция # id"). click (function () {}) не работает ни с safari, ни с chrome? - PullRequest
2 голосов
/ 16 марта 2012
$("#name option").click(function(){   //some code      })

HTML:

<select id = "name">

   <optgroup label="label1">
      <option>Option a</option>
      <option>Option a</option>
   </optgroup>
   <optgroup label="label2">
      <option>Option x</option>
      <option>Option y</option>
   </optgroup>

</select>

Мне нужно запускать функцию всякий раз, когда пользователь выбирает опцию из списка выбора. Проблема в том, что он работает только в Firefox, но не в Safari и Chrome (не проверяйте в IE).

Мне кажется, что мне не хватает правильного выбора тегов параметров в теге выбора !!

Ответы [ 3 ]

8 голосов
/ 16 марта 2012

Попробуйте вместо этого:

$("#name").change(function(){   //some code      });
0 голосов
/ 04 декабря 2013

Проверьте, используете ли вы css position: absolute. Если вы видите, что z-индекс идентификатора или класса находится сверху. Вы проверяете это, назначая курсор: указатель; в соответствующем css id / class. Если при наведении мышки вы видите руку (указатель), значит, вы на вершине. Если нет, то функция $ ('# myid'). Click ({}); не сработает.

0 голосов
/ 16 марта 2012

Вы помечаете его для того, чтобы иметь опцию непосредственно под записью, идентифицированной как имя.

Это должно быть:

$("#name optgroup option").click(function(){   //some code      })

Также вы можете подумать о том, чтобы заблокировать его немного дальше, выполнив:

$("select#name optgroup option").click(function(){   //some code      })
...