我正在我的一个列表上进行上移/下移功能,我需要移动的内容包含复选框。但是,我在PHP中设置了checked属性,当我切换元素的innerHTML时,检查状态总是恢复为checked属性的设置。当我点击
时,我尝试使用onchange函数来更改属性if(el.checked == true)
el.setAttribute("checked", "checked");
else
el.setAttribute("checked", "");
但这不起作用(我不知道为什么我甚至期望它能起作用,说实话)
知道我该怎么做吗?在dom树中完全切换元素会有问题,因为不会在PHP中设置checked属性。
编辑:显然没有办法做我问的问题,但我的问题是通过不是一个懒惰的混蛋并在DOM中移动东西来解决的,就像我所说的那样。
答案 0 :(得分:1)
当HTML中存在checked
属性时(无论它具有什么值),IDL(DOM)属性checked
初始化为true
,与其默认值相反价值false
。您的代码似乎不希望如此。我不明白你要做什么,因为你应该能够通过这样的操作移动一个复选框元素。如果移动元素节点,则无需使用属性。
答案 1 :(得分:0)
设置checked属性:
checkboxObject.checked=true|false
你可以试试这种方式
if(true) document.getElementById("check1").checked = true;
else document.getElementById("check1").checked = false;
希望这可以解决您的问题。