Ответы здесь, кажется, сбивают с толку, поскольку нет четкого объяснения.Когда вы устанавливаете значение динамически, например:
$('#inputfield').val('5.938')
Не получается получить значение с помощью таких селекторов, как:
$('#inputfield[value="5.938"]')
Для этого есть несколько обходных путей.Одним из них является использование фильтра:
var inputfield = $('#inputfield').filter(function () {
return $(this).val() == '5.938';
});
if (inputfield.length) {
alert("The input field has the value 5.938");
}
Или вы можете создать свой собственный селектор:
(function($) {
$.extend($.expr[':'], {
val: function(el, i, attr) {
return $(el).val() === attr[3];
}
});
}(jQuery));
if ($('#inputfield:val("5.938")').length) {
alert("The input field has the value 5.938");
}