动态生成文本框的按键事件

时间:2015-01-14 12:32:53

标签: jquery dynamic

tr.append($("<td/>").html('<input type="text" name="unit_price" id="unit_price"/>'));

这是我动态生成的文本框我尝试了很多类似下面的解决方案,但它不起作用帮助我极客

$("#unit_price").live("keyup", function(){  
     //Your Code to handle the click.
    }); 

$(staticAncestors).on(eventName, dynamicChild, function() {});

3 个答案:

答案 0 :(得分:2)

您需要使用 event delegation

  

事件委托允许我们将单个事件侦听器附加到父元素,该元素将为匹配选择器的所有后代触发,无论这些后代现在是存在还是将来添加。

$("body").on("keyup","#unit_price", function(){  
 //Your Code to handle the click.
}); 

答案 1 :(得分:1)

试试这个..

<table >
    <tr>
        <td class="test"></td>  

    </tr>
</table>

$(document).ready(function(){

$(".test").append($("<td/>").html('<input type="text" name="unit_price" id="unit_price"/>'));
     $("#unit_price").keyup(function(){
alert($(this).val());
  });
});

<强>演示: http://jsfiddle.net/cz1dvzvf/1/

答案 2 :(得分:0)

使用此

$(document).on("keyup","#unit_price", function(){  
 //Results here
});