Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将类应用于动态插入的html元素?_Javascript_Jquery_Html - Fatal编程技术网

Javascript 如何将类应用于动态插入的html元素?

Javascript 如何将类应用于动态插入的html元素?,javascript,jquery,html,Javascript,Jquery,Html,我正在使用jQuery掩码插件v1.5.3-jQuery-1.9.1.js 我有一个按钮: <input type="button" class="btn btn-success" id="add_employee" value="add employee" /> 对于最初使用页面创建的项目,在初始化DOM时可以正常工作 我的问题是,如何将Jquery掩码应用于DOM中新插入的html元素,在本例中是输入文本以获得此功能。该守则特别是: html += "<td><

我正在使用jQuery掩码插件v1.5.3-jQuery-1.9.1.js

我有一个按钮:

<input type="button" class="btn btn-success" id="add_employee" value="add employee" />
对于最初使用页面创建的项目,在初始化DOM时可以正常工作

我的问题是,如何将Jquery掩码应用于DOM中新插入的html元素,在本例中是输入文本以获得此功能。该守则特别是:

html += "<td><input name=\'w_hour[]\' class=\'number\' type=\'text\'></td>";

因为,当我试图写数字时,没有得到Jquery掩码,我想这是因为它是插入的新元素。我不确定我是Jquery新手,所以我非常感谢您的帮助。谢谢

因为您正在创建一个新的DOM元素,所以事件不会动态地附加到此元素,您已经告诉DOM新元素将使用掩码原型,所以用

$( document ).ready(function() {
  $("#add_employee").click(function() {
    var html = "<tr><td>";
    html += "<input name=\'w_hour[]\' class=\'number\' type=\'text\'>";
    html += "</td></tr>";
    $("#detail").html(html);
    $('.number').mask('000,000.00', {reverse: true});
   });
 });

这将很好,因为在插入新元素后,我们正在让js引擎知道新创建的元素将具有掩码protype。

在创建元素后执行掩码。您可以在添加员工单击功能中调用该掩码。我尝试在插入html代码后放置Jquery掩码,但没有成功。谢谢Adesh,我想我犯了一个错误,把Jquery掩码的代码放在新元素前面了。很好,我解决了问题,再次感谢。
html += "<td><input name=\'w_hour[]\' class=\'number\' type=\'text\'></td>";
$( document ).ready(function() {
  $("#add_employee").click(function() {
    var html = "<tr><td>";
    html += "<input name=\'w_hour[]\' class=\'number\' type=\'text\'>";
    html += "</td></tr>";
    $("#detail").html(html);
    $('.number').mask('000,000.00', {reverse: true});
   });
 });