我正在尝试让多个文本输入字段共享一个值。文本字段名为StartDate#,其中#替换为数字。我正在尝试使用以下代码:
function SetTimeFrame(element) {
if (document.Labs.SameDate.checked==true) {
var Elements=document.Labs.elements.length;
for (var i=0; i<Elements; i++) {
if (document.Labs.elements[i].type=='select-one') {
document.Labs.elements[i].options[element.selectedIndex].selected=true;
document.getElementById("StartDate"+i).value = document.getElementById("StartDate0").value;
}
}
}
}
当我使用此代码时,收到以下错误:
位置(45:7)的Javascript错误:'document.getElementById [...]'为null或不是对象
45:7就是这条线:
document.getElementById("StartDate"+i).value = document.getElementById("StartDate0").value;
它似乎没有将“i”的值附加到“StartDate”,因为它遍历forloop。我知道页面中有“StartDate0”和“StartDate1”,所以我知道它们不是空的。
我查看了与我类似的其他几个Stack Overflow问题,例如getElementById with a variable plus an id name和How to access an element by giving a variable in JSP using getElementById?,但都没有给出成功的解决方案。
非常感谢任何帮助。