Как мне написать оператор jQuery / javascript if, чтобы он срабатывал при выборе html <option>с определенным классом? - PullRequest
1 голос
/ 24 октября 2011
<select>
  <option value='34'>Trees</option>
  <option value='13' class='create_sub_category'>Add new sub-category</option>
  <option value='24' class='create_sub_category'>Add new sub-category</option>
  <option value='57'>Cats</option>
  <option value='34' class='create_sub_category'>Add new sub-category</option>
</select>



<script type='text/javascript'>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
if (selected(".create_sub_category")) {
  alert('hi');
}
</script>

Очевидно, что нет такой функции javascript или jQuery, которая называется 'selected', которую я использовал выше в своем выражении if, но кто-нибудь может помочь мне найти что-то, что будет делать то, что я описываю?

Ответы [ 3 ]

3 голосов
/ 24 октября 2011
$('select').change(function() {
  if($('select option:selected').hasClass('create_sub_category')) 
  {
    alert("SELECTED");
  }  
});

Вы должны поместить некоторый идентификатор / класс в этот элемент выбора.

2 голосов
/ 24 октября 2011

Вы можете сделать это:

if($("select option:selected").hasClass("create_sub_category")) {
  alert("hi");
}

Ключ здесь: опция: выбрана

0 голосов
/ 24 октября 2011

Нет необходимости в JQuery

if(/\bcreate_sub_category\b/.test(select.options[ select.selectedIndex ].className))
    //...

jsFiddle

...