jQuery - 从动态创建的输入中获取值

Ila*_*sda 2 jquery jquery-selectors

请在此处查看演示:http://jsfiddle.net/9pR87/28/

  1. 添加输入 - 使用新输入添加新行
  2. 获得价值 - 获得最后添加的输入的价值

我正在创建一些额外的行(发票元素),但是当我想使用获取动态创建的输入中的值时,输入值始终是undefined.为什么?

为什么jQuery找不到动态创建输入的值?

the*_*dox 6

我认为这足以满足您的需求:

$('#GetValue').click(function() {
    var i = $('table tbody tr').length-1; // subtract 1 for correct indexing
    alert($('#ItemPrice-' + i).val());
    // OR
    alert( $('[id^=ItemPrice]:last').val() );
});
Run Code Online (Sandbox Code Playgroud)

演示

根据jsfiddle的评论

问题是:

tableRow += '<td><input type="text" name="ItemPrice[]" id="ItemPrice-' + i + ' " 
                                                                              ^--- an space
placeholder="Item Price"></td>';

tableRow += '<td><input type="text" name="NumberOfItems[]" id="NumberOfItems-' + i + ' " 
                                                                                      ^-- an space
placeholder="Number Of Items"></td>';
Run Code Online (Sandbox Code Playgroud)

这是更新和工作代码