Javascript 如何使用Jquery在下一个TD中选择输入字段?
我想用Jquery在下一个TD中选择一个输入字段。我无法使用ID或类,因为可以添加或删除表的行 像Javascript 如何使用Jquery在下一个TD中选择输入字段?,javascript,jquery,Javascript,Jquery,我想用Jquery在下一个TD中选择一个输入字段。我无法使用ID或类,因为可以添加或删除表的行 像 <tr> <td><input type='text' name='price[]' onkeyup = 'getTest(this)' /> </td> <td><input type='text' name='qty[]' onkeyup = 'getPrice(this)' value='1' /> </td&g
<tr>
<td><input type='text' name='price[]' onkeyup = 'getTest(this)' /> </td>
<td><input type='text' name='qty[]' onkeyup = 'getPrice(this)' value='1' /> </td>
<td><input type='text' name='amount[]' /> </td>
</tr>
function getTest(obj){
//I want to select qty[] and amount[]
}
function getPrice(obj){
//I want to select price[] and amount[]
}
函数getTest(obj){
//我想选择数量[]和金额[]
}
函数getPrice(obj){
//我想选择价格[]和金额[]
}
任何人都知道如何选择输入字段,请帮助~
感谢您对网页的预期行为。Chinmayee的回答比这个好得多,但如果您不想更改任何HTML标记,您只需将其放入JavaScript即可:
function getTest(obj) {
var tr = $(obj).closest('tr');
var qty = tr.find('input[name="qty[]"]');
var amount = tr.find('input[name="amount[]"]');
console.log('qty: ' + qty.val());
console.log('amount: ' + amount.val());
}
function getPrice(obj) {
var tr = $(obj).closest('tr');
var price = tr.find('input[name="price[]"]');
var amount = tr.find('input[name="amount[]"]');
console.log('price: ' + price.val());
console.log('amount: ' + amount.val());
}
但Chinmayee的答案之所以比我的好,是因为它使用了不引人注目的JavaScript,而且它还使用了事件委托,因此它的性能会更好。这里有一个可能的解决方案(假设您希望金额是价格*数量): 此解决方案不再需要getTest()和getPrice()方法,您还可以在
输入
元素上删除onkeyup=“…”
属性
对于正在运行的演示。不要使用onkeyup之类的内联事件,让jquery在实际的jquery脚本中完成所有工作。另外,请重新表述您的问题标题,这不是一个真正的问题,如果他们尝试搜索,它对任何人都没有帮助!
$(document).ready(function(){
$('[name="price[]"], [name="qty[]"]').live('keyup', function(){
var inputs = $(this).closest('tr').find('input');
$(inputs[2]).val($(inputs[0]).val()*$(inputs[1]).val());
});
});