即使无效的 mvc 4,JQuery 客户端也会继续

本文关键字:客户端 JQuery 继续 无效 mvc | 更新日期: 2023-09-27 18:32:11

Script

$(document).ready(function () {
"use strict";
$.validator.unobtrusive.parse($("#form"));
$("#submit").on("click", function () {
    var form = $("#form");
    form.validate();
    if (form.valid()) {
    }
    return false;
});

});

.HTML

        <span>Please enter the amount of orders you wish you process:</span>
    <br>
    @Html.TextBoxFor(m => m.OrderModel.AmountOfOrders, new {id = "AmountOfOrders"})
    @Html.ValidationMessageFor(m=> m.OrderModel.AmountOfOrders)
    <input type="submit" value ="Submit" id="submit" />

我似乎对脚本有问题。C# 的数据批注显示在视图上,但即使必填字段为空,它仍将继续到另一页。

即使无效的 mvc 4,JQuery 客户端也会继续

如果没有给出你的按钮

type="button"

,它将默认为

type="submit"

考虑到您正在使用表单,当您的 javascript 正在执行时,该表单将通过单击按钮提交。

试试这个。

$("#submit").on("click", function (event) {
    var form = $("#form");
    form.validate();
if (form.valid()) {
}
else
{
    event.preventDefault();
    return false;
}
});

始终对表单使用 submit 事件,而不是 click 事件。这样,它将与按键一起使用:

$("#submit").on("submit", function () {
    var form = $("#form");
    form.validate();
    if (form.valid()) {
        // Proceed with submit!
    }
    else {
        // Stop submit!
        return false;
    }
});