我有一些这样的jQuery代码:

$(function($) {
$('input.autonumeric').autoNumeric({aSep: ',', aDec: '.',vMax:'1000000000000'}); });


使用该代码,具有autonumeric类的每个输入文本只能输入数字。

但是当我从innerHTML编写输入文本标签时,它根本不起作用。这就是我写代码的方式:

function edit(){
  var current = window.event.srcElement;
  while ( (current = current.parentElement) && current.tagName !="TR");
  var row = current.childNodes;
  td = row.item(0); var temp = td.innerHTML;
  td.innerHTML = "<input type=\"text\" value=\""+temp+"\" class=\"autonumeric\" \>";
}


我该如何解决此代码?注意:如果我的英语不够好,我很抱歉。

最佳答案

您还必须为新添加的Elements运行autoNumeric。
您可以在创建新输入时立即执行以下操作:

$(td).html($("<input type=\"text\" value=\""+temp+"\" class=\"autonumeric\" \>").autoNumeric({'....'}));


或保留您的版本并运行

$('input.autonumeric').autoNumeric({aSep: ',', aDec: '.',vMax:'1000000000000'}); });


之后再来。

07-28 06:47