我在Chrome Dev Tools控制台中玩耍,我注意到当我用鼠标物理上单击一个复选框并且调用$('input.checkbox').prop('checked',true)
时,最终结果在美学上是相同的,但在后端却不相同。
例如,假设有一个表单可以提交用户的性别。如果单击“男性”旁边的复选框并单击“提交”,系统将记录更改,但是如果我调用$('input.checkbox#male').prop('checked',true)
并单击“提交”,则该更改不会记录在后端。
是否以编程方式进行操作不会更改状态,还是在其末端专门禁止以编程方式更改状态?
最佳答案
提交结果之前,单击或更改侦听器可能会做一些必要的事情。尝试使用$('input.checkbox#male').click()
而不是$('input.checkbox#male').prop('checked',true)