2010-06-23 109 views
1

我正在尝试使用JavaScript动态添加文本字段。从我所知道的,我的代码应该可以工作。如何使用javascript动态添加HTML表单元素

function change() 
{ 
textField = document.createElement("text"); 
textField.id="sub"+count; 
textField.name="sub"+count; 
textField.value="Enter a name for another new subcategory"; 
textField.size="35"; 
textField.onchange="javascript:change()"; 
textField.onFocus="javascript:clearField()"; 
document.getElementById("addCatForm").appendChild(textField); 
} 

回答

2

你想:

var field = document.createElement('input'); 
field.type = 'text'; 

NB如果你正在做大量的JavaScript开发的,你可能想使用一个框架,比如ExtJS

代码来执行这将是:

var field = Ext.get('form').createChild({ 
    tag: 'input' 
    //other options 
}); 
field.on('change', change); 
field.on('focus', focus); 
+1

您可能希望使用“setAttribute”,以便使用field.setAttribute(“type”,“text”)'。 – 2010-06-23 16:32:20

+0

感谢你们两位!它现在很好用。 – Jimmy 2010-06-23 16:45:02

1

你正在创建一个文本元素,但添加的东西给它一个输入元素。

相关问题