Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery MVC中验证后的回发表单_Jquery_Asp.net Mvc_Asp.net Mvc 3 - Fatal编程技术网

Jquery MVC中验证后的回发表单

Jquery MVC中验证后的回发表单,jquery,asp.net-mvc,asp.net-mvc-3,Jquery,Asp.net Mvc,Asp.net Mvc 3,我有一个弹出表单,它有一个文本框,我通过jQuery使用AJAX帖子将表单提交给服务器。我使用强类型的部分视图作为弹出窗口,但当我将文本框保留为空并单击提交按钮时,它会显示一个成功的验证并将表单发布到服务器 以下是我的ajax代码: $(文档).ready(函数(){ 有人能帮我解决这个问题吗?改用客户端验证。如下所示:[假设textbox1是您的textbox的名称] $('#frmPost').submit(function (e) { if($('#frmPost').te

我有一个弹出表单,它有一个文本框,我通过jQuery使用AJAX帖子将表单提交给服务器。我使用强类型的部分视图作为弹出窗口,但当我将文本框保留为空并单击提交按钮时,它会显示一个成功的验证并将表单发布到服务器

以下是我的ajax代码:

$(文档).ready(函数(){


有人能帮我解决这个问题吗?

改用客户端验证。如下所示:[假设
textbox1
是您的textbox的名称]

$('#frmPost').submit(function (e) {
        if($('#frmPost').textbox1.value == "") {
           alert('Please enter a value');
           $('#frmPost').textbox1.focus();
           return false;
        }
        var serializedForm = $('#frmPost').serialize();

            $.ajax({
                url: '@Url.Action("Save","Scenario")',
                type: "POST",
                dataType: "json",
                data: serializedForm,
                success: function (result) {
                    if (result.Success==true)
                    {
                        location.reload();
                    }
                },
                error: function(xhr, status, error) {

                    //alert(error.Message);
                }

            });

        return false;
    });
希望这对您有用,谢谢。

请使用下面的方法 注意:在这里,我在发布之前检查了来自vqalidation的

$('#frmPost').click(function (e) {
    if($("#frmPost").validate())
    {
          var serializedForm = $('#frmPost').serialize();

            $.ajax({
                url: '@Url.Action("Save","Scenario")',
                type: "POST",
                dataType: "json",
                data: serializedForm,
                success: function (result) {
                    if (result.Success==true)
                    {
                        location.reload();
                    }
                },
                error: function(xhr, status, error) {

                    //alert(error.Message);
                }

            });

        return false;
    }
});

在客户端或视图的viewmodel中有两个验证位置(请选择)。您当前的验证发生在哪里?您需要向您展示ajax代码。我使用了模型验证感谢回复实际上它显示验证消息,但它也使用ajax发布表单。有什么方法可以防止吗
$('#frmPost').click(function (e) {
    if($("#frmPost").validate())
    {
          var serializedForm = $('#frmPost').serialize();

            $.ajax({
                url: '@Url.Action("Save","Scenario")',
                type: "POST",
                dataType: "json",
                data: serializedForm,
                success: function (result) {
                    if (result.Success==true)
                    {
                        location.reload();
                    }
                },
                error: function(xhr, status, error) {

                    //alert(error.Message);
                }

            });

        return false;
    }
});