Получение атрибута опции в jQuery - PullRequest
1 голос
/ 23 сентября 2011

У меня есть такая форма:

<select name="category" id="cat">
<option value="cat1" id="hello">Category1</option>
<option value="cat2" id="hello2">Category2</option>
</select>

Если я использую $('#cat').val() с функцией изменения в #cat id, она отображает значения (cat1 или cat2).

я хочу узнать, как я могу получить идентификатор или категорию1 (или категорию2)?

Ответы [ 3 ]

7 голосов
/ 23 сентября 2011
$('#cat option:selected').attr('id');

селектор : выбранный вернет выбранную опцию в элементе выбора или массив в случае multiple="multiple"

1 голос
/ 23 сентября 2011
$('select').change(function() {
    alert($('option:selected',this).attr('id')); 
});

Скрипка: http://jsfiddle.net/each/kqb9S/

0 голосов
/ 23 сентября 2011

Вместо .val() используйте .attr().

$('#cat').on('change', function() {
  alert( $(this).children('option:selected').attr('id') )
}) 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<select name="category" id="cat">
  <option value="cat1" id="hello">Category1</option>
  <option value="cat2" id="hello2">Category2</option>
</select>
...