如果 checked:false (on/off 按钮),则从数组中填充 li 元素删除重复项并添加值
fill a li element from a array remove duplicates and add values if checked:false (on/off button)
结果是我每次调用这个函数时列表都变大了。我知道我非常接近解决我的问题,但这些天我真的很紧张。任何帮助或评论将不胜感激。
function devicesoff() {
var devices = document.querySelectorAll("[id^='device_']");
for (var i = 0; i < devices.length; i++) {
if (devices[i].checked === false) {
var ele = devices[i].name;
var para = document.getElementById("p");
var list = document.createElement("li");
var t = document.createTextNode(ele + "\n");
list.appendChild(t);
para.appendChild(list);
}
}
先清除旧设备,再添加新设备。
function devicesOff() {
var devices = document.querySelectorAll("[id^='device_']");
var para = document.getElementById("p");
para.innerHTML = ""; // clear old devices first
// add new ones
for (var i = 0; i < devices.length; i++) {
if (devices[i].checked === false) {
var ele = devices[i].name;
var list = document.createElement("li");
var t = document.createTextNode(ele + "\n");
list.appendChild(t);
para.appendChild(list);
}
}
}
<input type="checkbox" id="device_1" name="device_1" />
<input type="checkbox" id="device_2" name="device_2" />
<input type="checkbox" id="device_3" name="device_3" />
<input type="button" value="devicesOff" onclick="devicesOff()" />
<ul id="p">
</ul>
结果是我每次调用这个函数时列表都变大了。我知道我非常接近解决我的问题,但这些天我真的很紧张。任何帮助或评论将不胜感激。
function devicesoff() {
var devices = document.querySelectorAll("[id^='device_']");
for (var i = 0; i < devices.length; i++) {
if (devices[i].checked === false) {
var ele = devices[i].name;
var para = document.getElementById("p");
var list = document.createElement("li");
var t = document.createTextNode(ele + "\n");
list.appendChild(t);
para.appendChild(list);
}
}
先清除旧设备,再添加新设备。
function devicesOff() {
var devices = document.querySelectorAll("[id^='device_']");
var para = document.getElementById("p");
para.innerHTML = ""; // clear old devices first
// add new ones
for (var i = 0; i < devices.length; i++) {
if (devices[i].checked === false) {
var ele = devices[i].name;
var list = document.createElement("li");
var t = document.createTextNode(ele + "\n");
list.appendChild(t);
para.appendChild(list);
}
}
}
<input type="checkbox" id="device_1" name="device_1" />
<input type="checkbox" id="device_2" name="device_2" />
<input type="checkbox" id="device_3" name="device_3" />
<input type="button" value="devicesOff" onclick="devicesOff()" />
<ul id="p">
</ul>