我正在開發ASP.NET Web Api 2.2應用程序與.NET Framework 4.5,C#和jQuery。刪除最後一個表格行以編程方式添加到HTML表格
我有一個視圖此表:
<table id ="batchTable" class="order-list">
<thead>
<tr>
<td>
<h4>Product</h4>
</td>
<td></td>
<td></td>
<td></td>
<td>
<h4>Codes</span></h4>
</td>
</tr>
<tr>
<td>
<h4>Label1</h4>
</td>
<td>
<h4>Label2</h4>
</td>
<td>
<h4>Label3</h4>
</td>
<td>
<h4>Label4</h4>
</td>
<td>
<h4>Label5</h4>
</td>
</tr>
</thead>
<tbody>
<tr>
<td>
<div class="group">
<input type="text"
name="BatchProducts[0].BatchName"
id="BatchProducts[0].BatchName"
required />
@*<span class="highlight"></span>
<span class="bar"></span>
<label>Name</label>*@
</div>
</td>
<td>
<div class="group">
<input type="text"
name="BatchProducts[0].BatchPO"
id="BatchProducts[0].BatchPO"
required />
@*<span class="highlight"></span>
<span class="bar"></span>
<label>PO</label>*@
</div>
</td>
<td>
<div class="group">
<input type="text" class="datepicker"
name="BatchProducts[0].MadeDate"
id="BatchProducts[0].MadeDate"
required />
@*<span class="highlight"></span>
<span class="bar"></span>
<label>Made</label>*@
</div>
</td>
<td>
<div class="group">
<input type="text" class="monthPicker"
name="BatchProducts[0].ValidateDate"
id="BatchProducts[0].ValidateDate"
required />
@*<span class="highlight"></span>
<span class="bar"></span>
<label>Validate</label>*@
</div>
</td>
<td>
<div class="group">
<input type="text" class="quantity"
name="BatchProducts[0].Quantity"
id="BatchProducts[0].Quantity"
onkeydown='return (window.event.keyCode >= 48 && window.event.keyCode <= 57) || window.event.keyCode == 8 || window.event.keyCode == 46'
required />
@*<span class="highlight"></span>
<span class="bar"></span>
<label>Quantity</label>*@
</div>
</td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="5">
<table>
<tr>
<td style="text-align: left;">
<input type="button" id="addrow" value="Add" />
</td>
<td>
<input type="button" class="ibtnDel" value="Delete last row">
</td>
</tr>
</table>
</td>
</tr>
</tfoot>
</table>
我使用jQuery,當用戶點擊addRow
按鈕來動態地添加新行,並且當他們點擊按鈕ibtnDel
用戶也可以刪除最後一行。
我有刪除按鈕的問題。這是它的JavaScript:
$("table.order-list").on("click", ".ibtnDel", function (event) {
$('table.order-list').each(function() {
if ($('table.order-list > tbody > tr', this).length > 0) {
$('table.order-list tbody tr:last', this).remove();
} else {
$('tr:last', this).remove();
}
});
counter -= 1
$('#addrow').attr('disabled', false).prop('value', "Add");
});
但它不工作,因爲if ($('table.order-list > tbody > tr', this).length > 0)
總是返回0。此代碼刪除tr
其中的按鈕Add
和Delete last row
是。
此代碼:
if ($('tbody', this).length > 0) {
$('tbody tr:last', this).remove();
當兩個按鈕Add
和Delete last row
在內部表裏面沒有工作過。
<tfoot>
<tr>
<td style="text-align: left;">
<input type="button" id="addrow" value="Add" />
</td>
<td>
<input type="button" class="ibtnDel" value="Delete last row">
</td>
</tr>
</tfoot>
我該如何讓它工作?
JSFidle:https://jsfiddle.net/VansFannel/fa0z225s/12/這是我的第一個JSFidle,它不起作用。我不知道你是否可以編輯它。
您可以在[JSFiddle](http://www.jsfiddle.net/)上提供一個簡單的_sample_代碼嗎? –
我無法看到ASP.NET部件如何與jQuery問題相關? – Anders
我已經添加了JSFiddle,https://jsfiddle.net/VansFannel/fa0z225s/5/,但它不工作,因爲這是我的第一個JSFiddle,我不知道如何使它工作。 @Anders,這是一個ASP.NET應用程序,我已經添加了儘可能多的細節。 – VansFannel