按顺序验证表行中的输入

时间:2018-01-17 11:36:16

标签: jquery

我有一个包含重复行的表,每个行都有一些具有相同类的输入和下拉列表。当我单击提交按钮时,我希望每行都进行一次验证,并且不想验证每行的相同输入。对于前

我有这个HTML:

<form method="post">
    <table width="100%" class="tableclass">
        <tr>
            <td><input type="text" class="abc" /></td>
            <td><input type="text" class="def" /></td>
            <td><input type="text" class="ghi" /></td>
        </tr>
        <tr>
            <td><input type="text" class="abc" /></td>
            <td><input type="text" class="def" /></td>
            <td><input type="text" class="ghi" /></td>
        </tr>
        <tr>
            <td><input type="text" class="abc" /></td>
            <td><input type="text" class="def" /></td>
            <td><input type="text" class="ghi" /></td>
        </tr>
    </table>
    <input type="submit" class="sbmt" value="submit" />
</form>

这里,如果我点击提交按钮,并且用户没有输入第一行的第一个输入,并且已输入第二行的第一个输入,则验证应移至同一行的下一个输入,而不是检查第二行的最佳输入行是空的还是没有。 换句话说,验证应该一次检查一行,然后移动到下一行,但是使用我的下面的代码,验证是检查每行的每个.abc输入,然后检查.def输入等等,我不想要。

$(function () {
    $(".sbmt").click(function () {
        $(".tableclass tr").each(function () {
            if ($(this).find(".abc").val() == '') {
                $("#err").html("abc empty")
                return false
            } else if ($(this).find(".def").val() == '') {
                $("#err").html("def empty")
                return false
            } else if ($(this).find(".ghi").val() == '') {
                $("#err").html("ghi empty")
                return false
            } else {
                $(".sbmt").submit();
            }
        })
    })
})

0 个答案:

没有答案