动态创建的文本框键盘事件无法正常工作

时间:2016-03-27 10:29:27

标签: javascript jquery html

我正在动态创建一个表,第一行作为文本框。 HTML

<input type="button" id="btncreate" value="create" />

<div id="htmltable">

</div>

Jquery的

$(document).ready(function() {

 create();

 });

 $(function() {
  $('#btncreate').click(function() {

     create();
   });
   $("#txtSearchPicklistNo").keyup(function() {
     alert($(this).val());
   });
 });


 function create() {
   $('#htmltable').append("<table  class='table table-striped table-bordered'></table>");

   var table = $('#htmltable').children();
   table.append("<thead>");
   table.append("<tr>");
   table.append("<th style='width:25px;'>SNo </th>");
   table.append("<th style='width:75px;'>Picklist No</th>");

   table.append("</tr>");
   table.append("</thead>");
   //   table.append($("<td/>").html('<input type="text" class="unitprice" name="unit_price" id="unit_price"/>'));
   table.append("<tbody><tr><td></td><td><input type='text' id='txtSearchPicklistNo'  style='font-size: x-small; height: 13px;' /></td></tr></tbody>");

 }

在上面的javasript中,我有一个create函数,当用户点击create button时会动态创建一个表。在该表中第一行作为文本框,id为'txtSearchPicklistNo'

问题是当我在按钮点击事件$('#btncreate').click(function() {create(); });中调用create function时,keyup事件没有触发。但是从$(document).ready(function() {create();});

调用时,同样的功能与预期的一样多

请检查小提琴手, https://jsfiddle.net/King_Fisher/a7v7tc5L/2/

我该如何解决这个问题?

0 个答案:

没有答案