我正在尝试触发一个javascript函数,它捕获订单ID以及输入的日期..页面上可以输入的结果也是列表格式,这意味着有多个输入字段。
我将订单ID提醒,但相应行的日期不是
请参阅我的代码:
HTML / PHP:
<td>Test company</td>
<td><input type="text" id="ord<?php echo $row['orderid']?>" value="10/11/2015"></td>
<td><button class="updateOrd" ordid="<?php echo $row['orderid']?>">Add Date to Order</button></td>
<td>Test company2</td>
<td><input type="text" id="ord<?php echo $row['orderid']?>" value="10/11/2015"></td>
<td><button class="updateOrd" ordid="<?php echo $row['orderid']?>">Add Date to Order</button></td>
JS:
$(document).on('click', '.updateOrd', function(e) {
var ordid = $(this).attr('ordid');
var date = $('input#ord'.ordid).val();
alert(ordid);
alert(date);
});
答案 0 :(得分:2)
我建议您使用data-ordid=""
代替ordid=""
。这样您的HTML就有效了。
问题是:
var date = $('input#ord'.ordid).val();
应该是:
var date = $('input#ord' + ordid).val();
对于记录,这是你如何组合字符串和变量:
-----------------------------
----- JavaScript ---- + -----
----- PHP ---- . -----
-----------------------------
答案 1 :(得分:0)
你必须连接&#39;输入#ord&#39; + ordid
$(document).on('click', '.updateOrd', function(e) {
var ordid = $(this).attr('ordid');
var date = $('input#ord' + ordid).val();
alert(ordid);
alert(date);
});
希望这有帮助!