gpt4 book ai didi

javascript - 为什么 jquery 选择器从旧值而不是新值中选择元素

转载 作者:行者123 更新时间:2023-11-30 08:50:12 25 4
gpt4 key购买 nike

每当我使用带有选择器的 jquery 选择元素时,如果我获得所选元素的值,它会从旧值而不是新值中选择元素,它会给我新值。我的代码在这里 http://jsfiddle.net/HUdkN/3/ .

这里我使用 Australia 值来选择元素,即使我更改了值。它将选择元素。为什么 ???有人可以解释一下吗。

HTML 代码

    <input type="text" class="lbl" value="Australia" />
<div id="result"></div>
<br />
<br/>
<input type="button" value="check" id="check_btn">

JavaScript 代码

    function check_fnc() {
jQuery('input').removeClass('error');
jQuery('input[value="Australia"]').each(function () {
$(this).addClass('error');
$('#result').html(this.value);
});
}

$('#check_btn').click(function () {
check_fnc();
})

最佳答案

那是因为 Attribute Equals selector例如 [value="Australia"] 匹配实际的 HTML 属性,而不是当前的 DOM 属性,value HTML 属性将始终包含元素的原始值。

要匹配当前值,可以使用filter()相反:

$("input").filter(function() {
return this.value == "Australia";
}).each(function() {
$(this).addClass("error");
$("#result").html(this.value);
});

关于javascript - 为什么 jquery 选择器从旧值而不是新值中选择元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18567496/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com