Javascript 如何使用jquery';s prop()设置复选框的属性?

Javascript 如何使用jquery';s prop()设置复选框的属性?,javascript,jquery,checkbox,attributes,prop,Javascript,Jquery,Checkbox,Attributes,Prop,我想使用prop()将复选框的属性设置为checked 当我使用prop(“checked”,true)时,我可以直观地看到复选框已选中,但如果我查看HTML,则没有名为checked的属性值 例如: <input type="checkbox" class="my_class" checked> 是我在使用prop(“checked”,true)后希望看到的。 但是,我没有看到HTML代码中有任何更改。我想稍后引用是否设置了属性checked,但由于HTML中没有名为chec

我想使用
prop()
将复选框的属性设置为
checked

当我使用
prop(“checked”,true)
时,我可以直观地看到复选框已选中,但如果我查看HTML,则没有名为
checked的属性值

例如:

<input type="checkbox" class="my_class" checked>

是我在使用
prop(“checked”,true)
后希望看到的。 但是,我没有看到HTML代码中有任何更改。我想稍后引用是否设置了属性
checked
,但由于HTML中没有名为
checked
的属性,因此我无法引用它。

使用
prop()
时,您正在更改属性,而不是属性,因此在DOM检查器中看不到更改,但无论出于何种意图和目的,它都发生了变化

要稍后查看元素是否已选中,请执行以下操作:

$('.my_class').is(':checked')

无论您在DOM检查器中看到什么,选中时将返回true,未选中时将返回false。

是否有特定原因不将attr()用于此应用程序


如果不是,那么这就是你应该使用的而不是prop()

你可以在稍后的页面中引用它。adeneo在他的评论中说得很好:“当使用prop()时,你改变的是属性,而不是属性,所以在DOM检查器中看不到这些改变”是的,属性确实是你想要改变的,这就是为什么
prop()
将是首选方法,在DOM检查器中看不到任何变化只是一开始有点混乱。我认为在版本1.9?@NancyCollier中不推荐使用attr()-可能不是针对实际属性,而是针对属性。问题是复选框在表单中,保存时设置为
显示:无
。当我稍后查看表单时(通过设置
display:block
),没有选中任何复选框。这是为什么?@NancyCollier-应该可以正常工作->?