Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.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
Javascript Ajax请求之前的Jquery表单验证_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript Ajax请求之前的Jquery表单验证

Javascript Ajax请求之前的Jquery表单验证,javascript,jquery,ajax,Javascript,Jquery,Ajax,我已经浏览了其他线程并使用其中一个作为参考,但仍然无法找到解决方案。 我的问题是: 我在点击按钮时调用一个函数,现在该函数在验证后进行了验证。我试图在提交处理程序中使用ajax请求发布数据,问题是我的字段得到了验证,但并没有调用ajax请求 <input type="button" value="Register" id="registerP" onclick="registerPatient()" class="form-control input-sm btn-success "&g

我已经浏览了其他线程并使用其中一个作为参考,但仍然无法找到解决方案。
我的问题是:

我在点击按钮时调用一个函数,现在该函数在验证后进行了验证。我试图在提交处理程序中使用ajax请求发布数据,问题是我的字段得到了验证,但并没有调用ajax请求

<input type="button" value="Register" id="registerP" onclick="registerPatient()"  class="form-control input-sm btn-success ">

function registerPatient(){
$("#patientRegistration").validate({
rules: {
    patientName: {
    required: true,
    textOnly: true
                },
       },
messages: {
       patientName: {
       required: "Please enter the full name",                  
                    },
          },
submitHandler: function(form) { 
            $.ajax({
             type: "POST",
             url: "/LoginMavenSpringMVC/appointment/savePatient",
             data: "patientName=" + patientName,
         success: function(response){},
         error: function(e){}
      });
  }
 });
}  

功能注册患者(){
$(“#patientRegistration”)。验证({
规则:{
患者姓名:{
要求:正确,
纯文本:对
},
},
信息:{
患者姓名:{
必填:“请输入全名”,
},
},
submitHandler:函数(形式){
$.ajax({
类型:“POST”,
url:“/LoginMavenSpringMVC/appointment/savePatient”,
数据:“patientName=“+patientName,
成功:函数(响应){},
错误:函数(e){}
});
}
});
}  

但是,如果我不使用验证和直接调用Ajax,我就可以发布数据。请指出我的错误所在。

将您的
数据更改为这一格式。

data: {patientName:patientName},
确保在捕获方法上有一个同名的参数“patientName”,以便从post页面调用其post

这应该行得通


还要检查您的帖子中是否有patientName参数值。为此,首先通过“alert”检查并传递patientName参数。你会知道你得到了什么以及为什么没有发布帖子。

将你的
数据更改为这一格式。

data: {patientName:patientName},
确保在捕获方法上有一个同名的参数“patientName”,以便从post页面调用其post

这应该行得通


还要检查您的帖子中是否有patientName参数值。为此,首先通过“alert”检查并传递patientName参数。您将知道您得到了什么以及为什么post没有发生。

您可以这样尝试,调用jquery表单验证并检查是否已验证:

$(document).ready(function(){
  $("#patientRegistration").validate({
    rules: {
        patientName: {
        required: true,
        textOnly: true
                    },
           },
    messages: {
           patientName: {
           required: "Please enter the full name",                  
                        },
              }
     });
});

function registerPatient(){
   var IsValid=$("#patientRegistration").valid();
   if(IsValid){
     var patientName=""; //value for patient name
     $.ajax({
             type: "POST",
             url: "/LoginMavenSpringMVC/appointment/savePatient",
             data: {"patientName": patientName},
             success: function(response){},
             error: function(e){}
     });
   }
}

您可以这样尝试,调用jquery表单验证并检查是否已验证:

$(document).ready(function(){
  $("#patientRegistration").validate({
    rules: {
        patientName: {
        required: true,
        textOnly: true
                    },
           },
    messages: {
           patientName: {
           required: "Please enter the full name",                  
                        },
              }
     });
});

function registerPatient(){
   var IsValid=$("#patientRegistration").valid();
   if(IsValid){
     var patientName=""; //value for patient name
     $.ajax({
             type: "POST",
             url: "/LoginMavenSpringMVC/appointment/savePatient",
             data: {"patientName": patientName},
             success: function(response){},
             error: function(e){}
     });
   }
}

给出url或上传完整,这样可以清楚地看到我的观点。给出url或上传完整,这样可以清楚地看到我的观点。如果我没有使用验证代码,这是在保存数据,也就是在调用函数时调用ajax。这意味着,使用这段代码时,不会调用Ajax,否则在控制台中会出现错误。如果我不使用验证代码,即调用函数时调用Ajax,则会保存数据。这意味着在这段代码中,不会调用Ajax,否则它会在控制台中给我带来错误。