gpt4 book ai didi

javascript - jQuery ("checked", true) 有效,然后无效?

转载 作者:太空狗 更新时间:2023-10-29 14:40:16 24 4
gpt4 key购买 nike

Please see this Fiddle

HTML:

<form>
<button type="button" class="form-clear">Clear</button>
<button type="button" class="form-set">Set</button>
<input type="text" value="Preset value" />
<input type="checkbox" checked/>
<input type="checkbox" />
</form>

jQuery:

$(".form-clear").click(function(){
$(':input').not(':button, :submit, :reset, :hidden').val('');
$(':checkbox, :radio').attr('checked', false);
});
$(".form-set").click(function(){
$(':input').not(':button, :submit, :reset, :hidden').val('New preset value');
$(':checkbox, :radio').attr('checked', true);
});
  1. 首先点击设置。这将输入“新预设值”并选中第二个复选框。
  2. 单击清除清除整个表单。
  3. 再次点击设置。这将输入“新预设值”但不会选中第二个复选框。

我猜这两个函数之间有冲突吗?

最佳答案

关于 checked 属性要记住的最重要的概念是它不对应于 checked 属性。 属性 实际上对应于defaultChecked 属性,并且应该只用于设置复选框的初始值。

使用.prop()而不是 .attr() .

$(".form-clear").click(function(){
$(':input').not(':button, :submit, :reset, :hidden').val('');
$(':checkbox, :radio').prop('checked', false);
});
$(".form-set").click(function(){
$(':input').not(':button, :submit, :reset, :hidden').val('New preset value');
$(':checkbox, :radio').prop('checked', true);
});

关于javascript - jQuery ("checked", true) 有效,然后无效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22435346/

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