[英]jquery to dynamically add table row with value upon entering text input using enter key more than two column
1.html
<table id="cstbl" border="1">
<tr bgcolor="#FFFFFF" align="center">
<td>no</td>
<td>item no</td>
<td>descr</td>
<td>uom</td>
<td>qty</td>
<td>upr</td>
<td>disc</td>
<td>sub</td>
<td>x</td>
</tr>
</table>
<br />
Enter barcode:
<input type="text" name="barcode" id="barcode" />
2.javascript
var index = 1;
$('input[name=barcode]').on('keyup',function(e){
var code = (e.keyCode ? e.keyCode : e.which);
if (code == 13) {
$('table').append('<tr><td></td><td></td> <td></td><td></td><td></td> <td></td> <td></td><td></td><td></td> </tr>');
$('table tr:last td:first').html(index);
$('table tr:last td:last').html($(this).val());
$(this).focus().select();
index++;
}
});
如果我想在table cstbl
的第二列(即項目No列)中顯示barcode
的值,那么替換javascript中的td:last
的腳本是什么?
我只知道只有:first
和:last
選擇器。
您可以在建立新行時直接添加以下值:
$('#cstbl').append(
'<tr>' +
'<td>' + index + '</td>' +
'<td>' + $(this).val() + '</td>' +
'<td></td>' +
'<td></td>' +
'<td></td>' +
'<td></td>' +
'<td></td>' +
'<td></td>' +
'<td></td>' +
'</tr>');
或過濾所有td僅匹配第二個(在0索引數組中,這就是為什么1):
$('table tr:last td').eq(1).html($(this).val());
試試這個演示
var index = 1;
$('input[name=barcode]').on('keyup',function(e){
var code = (e.keyCode ? e.keyCode : e.which);
if (code == 13) {
$('table').append('<tr><td></td><td></td><td></td><td></td><td></td><td></td><td> </td><td></td><td></td> </tr>');
$('tr:last td:eq(0)').html(index);
$('tr:last td:eq(1)').html($(this).val());
$(this).focus().select();
index++;
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.