0

保存ボタンがクリックされたときに、生成された 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;
        });
4

1 に答える 1

2
$("#btnSaveRow").click(function() {
    $("input[type='text']", ".dynamictable tbody tr:gt(0)").each(function() {
        if (!$.trim(this.value)) {
            alert("Please enter data");
            $(this).focus();
            return false;
        }
        return true;
    });
});

デモ

于 2012-06-08T04:12:58.107 に答える