JavaScript动态添加表单字段时input2输入框无法正常显示如何解决
问题原因
该问题既不是浏览器兼容问题,也不是JavaScript对表单字段数量存在限制,完全是代码编写错误导致:
- 创建Descrição对应的输入框时,错误调用了
document.createElement("input2"),HTML原生不存在input2这个标签,浏览器无法将这个自定义标签识别为可输入的表单元素,因此无法正常渲染出可供输入的输入框。
解决方法
仅需修改一行代码即可修复问题:
将代码中的
var input2 = document.createElement("input2");
修改为
var input2 = document.createElement("input");
修改后刷新页面,即可看到Descrição对应的红框输入框可以正常输入内容。
可选优化建议
- 给数量输入框添加
type="number"属性,同时设置min和max限制输入范围,避免用户输入非数字或者超出限制的数值:
<input type="number" id="member" name="member" value="" min="1" max="10">Number of members: (max. 10)<br />
- 点击
Fill Details链接时默认会跳转至页面顶部,可在onclick事件中添加return false;阻止默认跳转行为:
<a href="#" id="filldetails" onclick="addFields();return false;">Fill Details</a>
内容的提问来源于stack exchange,提问作者searcher__dm01
相关产品推荐
相关产品推荐

