我在网页上使用JavaScript创建了多种表单,我想用值(startDate)填充适当表单中的字段。
我尝试了以下代码:
oForm = document.forms['bookingform' + fleetID];
oFormElement = oForm.elements['startdate'];
oFormElement.value = startDate;
...但是出现错误“ oForm.elements为null或不是对象”。
到目前为止,我一直在使用document.getElementById('startdate')。value而不是创建一个form对象。在指定应填充值的形式时,哪种方法正确?
最佳答案
form.elements是一个纯数组。因此,您要么知道索引,要么必须搜索它。
Form = document.forms['bookingform' + fleetID];
oFormElement = oForm.elements[0]; // This is the index of the element
oFormElement.value = startDate;
如果您必须搜索,则如下所示:
Form = document.forms['bookingform' + fleetID];
var oFormElement;
for (var i = 0, len = oForm.elements.length; i < len; ++i) {
if (oForm.elements[i].name == "startdate") {
oFormElement = oForm.elements[i];
break;
}
}
if (oFormElement) {
oFormElement = oForm.elements[0]; // This is the index of the element
oFormElement.value = startDate;
} else {
// crash
}