以下是JSFiddle的示例。
单击复选框时,所有周围的邻居复选框都应打开或关闭。
好像应该有效!他们"检查"道具切换,但在视觉上没有任何反应。
n.prop("checked", !n.prop("checked"));
我很惊讶这发生在prop()而不是attr() 有任何想法吗?谢谢!
答案 0 :(得分:0)
不,他们检查的道具不会切换,问题不是由prop()
超过attr()
引起的(反之亦然)。
问题在第25行。选择带有n = $(neighbor);
的DOM元素并不起作用,因为在此阶段,每个邻居都是一个包含2个密钥的Checkbox对象 - id
和{{1} }。
要选择DOM元素(因此,要实际触发对其值的更改),请使用该对象内的id在jQuery选择器中按id选择它。将第25行替换为:
checked
以下是一个有效的例子:https://jsfiddle.net/superKalo/0thktq5f/
我希望这会有所帮助。