Ответ 1
Просто выберите все параметры из select
и отфильтруйте их по значению text()
:
var likeComperssionOption = $('select[id*=ComparisionType]:first option').filter(function() { return $(this).text() == "LIKE" });
У меня есть следующий селектор
var likeComperssionOption = $('select[id*=ComparisionType]').eq(0)
.find("option:contains('LIKE')");
это проверяет наличие опции, в которой содержит слово "нравится" правильно?
Как найти опцию точно со словом "like"?
Что-то вроде этого:
var likeComperssionOption = $('select[id*=ComparisionType]').eq(0)
.find("option:equals('LIKE')");
Просто выберите все параметры из select
и отфильтруйте их по значению text()
:
var likeComperssionOption = $('select[id*=ComparisionType]:first option').filter(function() { return $(this).text() == "LIKE" });
Если вы хотите выбрать на основе атрибута value
параметров, вам нужно использовать атрибут равно селектору, чтобы выбрать элементы с определенное значение для их атрибута value
:
var likeComperssionOption = $('select[id*=ComparisionType]').eq(0)
.find("option[value='LIKE']")
В противном случае, чтобы выбрать на основе текста отображения параметров, используйте:
var likeComperssionOption = $('select[id*=ComparisionType]').eq(0)
.find("option").filter(function() {
return $(this).text() == 'LIKE';
});
Обновление: У вас могут возникнуть проблемы с вашим начальным селектором, это выглядит очень странно. Вероятно, вы должны изменить
$('select[id*=ComparisionType]').eq(0)
к чему-то простому, например
$('#ComparisionType')
Понятие этого ответа отлично работает, вы можете видеть его в действии здесь.