保存ボタンがクリックされたときに、生成された html テーブル (グリッド) からテキスト ボックスの値を検証する必要があります。以下は私がこれまでに持っているものです。Firebug を使用してコードをトレースしたところ、最初の行のみがループされますが、タグ内の 2 行目から始まる行をループする必要があります。助けてください。
HTMLコード
<div class="msg-body">
<table class="dynamictable">
<thead>
<tr>
<th style="display: none"></th>
<th>Package Name</th>
<th>Package Cost</th>
<th>No. of Attendees</th>
<th>Delete</th>
</tr>
</thead>
<tbody>
<tr class="prototype">
<td style="display: none"><input type="hidden" name="id[]" value="" class="id" /></td>
<td><input type="text" name="packagename[]" value="" class="pkname" /></td>
<td><input type="text" name="packagecost[]" value="" class="pkcost"/></td>
<td><input type="text" name="noofattendees[]" value="" class="nfattendees"/></td>
<td>@Html.ActionImage("", null, "~/Content/Images/delete.gif", "Delete", new { @class = "deleterows" }) </td>
</tr>
<tr>
<td style="display: none"><input type="hidden" name="id[]" value="" class="id" /></td>
<td><input type="text" name="packagename[]" value="" class="pkname" /></td>
<td><input type="text" name="packagecost[]" value="" class="pkcost"/></td>
<td><input type="text" name="noofattendees[]" value="" class="nfattendees"/></td>
<td>@Html.ActionImage("", null, "~/Content/Images/delete.gif", "Delete", new { @class = "deleterows" }) </td>
</tr>
</tbody>
</table>
<div style="padding:20px 0 20px 100px "><input type="button" id="btnAddButton" value="Add New" class="button addbutton"/><input type="button" id="btnSaveRow" value="Save" class="button addbutton"/></div>
</div>
Javascript コード
$("#btnSaveRow").click(function () {
$('.dynamictable tr').each(function () {
var $val = $("input[type='input']").val();
if ($val == "") {
alert("Please enter data");
$(this).focus();
return false;
}
return true;
});