使用Javascript将文本字段添加到HTML表单时出错
我正在建立一个移动网络服务,允许员工在手机上输入工作时间。我创建了一个由php循环函数构造的表单,该函数循环一周中所有日期的数组。这非常好,表单如下所示: 现在,如您所见,每天都有一个+按钮。我想让用户可以通过点击这个按钮来添加文本字段。在每个文本字段中,他们可以添加工作时完成的任务的描述 这是我要用于此的代码:使用Javascript将文本字段添加到HTML表单时出错,javascript,php,html,function,uitextfield,Javascript,Php,Html,Function,Uitextfield,我正在建立一个移动网络服务,允许员工在手机上输入工作时间。我创建了一个由php循环函数构造的表单,该函数循环一周中所有日期的数组。这非常好,表单如下所示: 现在,如您所见,每天都有一个+按钮。我想让用户可以通过点击这个按钮来添加文本字段。在每个文本字段中,他们可以添加工作时完成的任务的描述 这是我要用于此的代码: <input id="<? echo $i;?>" type="button" class="plusButton" onclick="addField(<?
<input id="<? echo $i;?>" type="button" class="plusButton" onclick="addField(<?echo $i; ?>);"/>
<script type="text/javascript">
function addField(p) {
var newField = document.createElement("input");
newField.type = 'text';
newField.width = '50px';
newField.height = '20px';
var weekDays = new Array();
<?
for($q = 0; $q < count($weekDays); $q++) { ?>
weekDays.push(<? echo $weekDays[$q]; ?>);
<? } ?>
document.getElementById(weekDays[p]).innerHTML.appendChild(newField);
alert(weekDays[p]);
}
</script>
我不知道我做错了什么,我在网上花了一天多的时间试图解决这个问题。如果您能帮助解决此问题,我们将不胜感激 您可能要替换:
document.getElementById(weekDays[p]).innerHTML.appendChild(newField);
与:
Element.innerHTML
返回一个字符串。不能对字符串调用appendChild
。它看起来也像document.getElementById(平日[p])
返回null。确保p
和weekdays[p]
没有未定义,并且getElementById
实际返回所需的元素。它似乎确实得到一个空对象,但我正确定义了所有对象。我已经试过把这个代码从循环中去掉,但这也不是问题所在。好吧,我已经修复了它,我必须在工作日执行push(“”)
而不是工作日.push()代码>谢谢!
document.getElementById(weekDays[p]).innerHTML.appendChild(newField);
document.getElementById(weekDays[p]).appendChild(newField);