![](/img/trans.png)
[英]How can I access form input from an input field which was created dynamically via a Javascript function?
[英]How can i Assign onkeypress-function to dynamically created input-boxes in javascript?
如何在JavaScript中为动态创建的输入框分配onkeypress-function?
您可以在这里找到我的源代码: http : //goo.gl/9BHSt
var cell2 = row.insertCell(1);
var el = document.createElement('input');
el.type = 'text';
el.size = "3";
el.name = 'txtUnit' + iteration;
el.id = 'txtUnit' + iteration;
el.onKeyPress = "return checkIt(event)";
cell2.appendChild(el);
el.type = 'text';
el.size = "3";
el.name = 'txtUnit' + iteration;
el.id = 'txtUnit' + iteration;
el.onKeyPress = "return checkIt(event)";
cell2.appendChild(el);
但是el.onKeyPress = "return checkIt(event)";
不管用 。 为什么呢
用这个 :
el.onkeypress =
function(event)
{
//write your method body
};
要么
el.onkeypress = KeyPressHandler;
function KeyPressHandler(event)
{
//write your method body
}
编辑
您提供了错误的论点。 看到这个:
function KeyPressHandler(event)
{
evt = (evt) ? evt : window.event
var charCode = (evt.which) ? evt.which : evt.keyCode
if (charCode > 31 && (charCode < 48 || charCode > 57)) {
status = "This field accepts numbers only."
return false;
}
status = ""
return true;
}
您应该将参数名称更改为evt
function KeyPressHandler(evt)
{
evt = (evt) ? evt : window.event
var charCode = (evt.which) ? evt.which : evt.keyCode
if (charCode > 31 && (charCode < 48 || charCode > 57)) {
status = "This field accepts numbers only."
return false;
}
status = ""
return true;
}
我进行了测试,并且效果很好。
使用jQuery会更好。 它具有live
功能,可以将事件附加到动态添加的元素上。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.