Ответ 1
Попробуйте:
$('select option[value="A1"]:selected')
Как выбрать все поля выбора с помощью селектора jQuery, где выбрано значение "A1"?
Поле выбора образца:
<select name="accesslevel">
<option value="A1">A1 Access</option>
<option value="A2">A2 Access</option>
</select>
Мне нужно использовать селектор, чтобы сделать следующее:
.parent().nextAll('td[id^="A1Access"]').show();
.parent().nextAll('td[id^="A2Access"]').hide();
Может ли кто-нибудь помочь?
Попробуйте:
$('select option[value="A1"]:selected')
Как упоминалось ранее, решение Prakash является самым близким, но оно выбирает значение параметра, а не поле select. Это можно зафиксировать с помощью: селектора.
$('select:has(option[value="A1"]:selected)')
$('select').filter(
function(){
if($(this).val()=="A1")
return true;
else
return false;
}
)
вы можете добавить свою функцию после этого, например
$('select').filter(
function(){
if($(this).val()=="A1")
return true;
else
return false;
}
).parent().nextAll('td[id^="A1Access"]').show();
Вот что-то вроде вашей оригинальной спецификации, но немного изменилось для работы с моими селекторами.
$('.container').find('option[value=A1]').filter(':selected').parent('select').show();
И здесь это упрощено:
$('option[value=A1]:selected').parent('select');
Для простого выбора опции во всех html-темах
alert($('option[value=A1]').html());
Для select
alert($('select[name=accesslevel]').find('option[value=A1]').html());
Но предупреждение будет работать только с одним элементом.
Для выбора у вас есть
$('option[value=A1]').parent().remove();
Он выберет родителя и удалит его.
Сделайте id таким образом.
<select name="accesslevel" id="myselector">
<option value="A1">A1 Access</option>
<option value="A2">A2 Access</option>
</select>
Теперь выберите его с этим идентификатором.
$("select#myselector option:selected").each(function ()
{
alert($(this).text() + " ");
});