Расширенный селектор jQuery
-
22-08-2019 - |
Вопрос
Могу ли я использовать операторы сравнения в методе селектора jQuery?
например.
У меня есть список элементов div, созданных php, которые используют один и тот же класс CSS, но имеют атрибуты значений 1, 2, 3 и т. д.У меня также есть поле ввода текста с идентификатором.Это поле может принимать только числа.Я хотел бы выбрать элемент div (из длинного списка), имеющий атрибут значения, соответствующий значению, введенному в поле ввода текста.
Могу ли я написать что-то вроде этого:
$( '$(".someClass").val() == $("input#someId").val()' )
???
Решение
$('.someClass').filter(function() {
return $(this).attr('value') == $('input#someId').val() ;
})
Другие советы
Взгляните на страницу селекторов CSS3: http://www.w3.org/TR/css3-selectors/.
Рекомендуемый селектор:E[foo="bar"], как в '.class[value="'+$('#inputId').val()+'"]'.
Примечание:не испытано.
это просто стандартный селектор jquery: атрибутEquals
<html>
<head>
<title>Just a test</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript">
$(function() {
$('#txtValue').change(function(){
$('.selectMe').css('color', 'black');
$('.selectMe[value= '+$(this).val()+']').css('color', 'red');
});
});
</script>
</head>
<body>
<input type="text" id="txtValue" value=""/>
<div class="selectMe" value="1">one</div>
<div class="selectMe" value="2">two</div>
<div class="selectMe" value="3">three</div>
</body>
</html>