不知何故下面的代码工作,但我想用$ ajax而不是$ .postmethod

时间:2014-08-13 15:00:35

标签: jquery validation

  1. 尝试使用ajax实现此目的但是当我通常使用提交页面刷新时
  2. 什么是ajax然后使用

    submitHandler:function(form){
     $.ajax({
          url: form.action,
          type: form.method,
          data: form.serialize(),           
          beforeSend: function() {
            $('#loading').show();                           
          },
          complete: function(){                                    
            $('#loading').hide();           
          },
          success: function(data)
          {             
            console.log(data);
          }
    
        });
        $(form).submit();
      }
    

2 个答案:

答案 0 :(得分:0)

AJAX允许我们异步发布和获取数据 - 无需页面刷新。如果您不想刷新页面,则需要在提交事件上调用preventDefault()来覆盖浏览器的默认表单提交。

此处的页面正在刷新,因为您自动且有些不必要地触发$(form).submit()并且没有任何检查来阻止默认的浏览器行为。

答案 1 :(得分:0)

目前使用以下 $ .POST 方法完成了我的工作,并且工作良好且高效。

submitHandler:function(form){
 $.post('userinsertcheck.php',
  $("#registration_form").serialize(),
   function(){
    $("#dialogtext").html("Account Created Successfully");
     $("#dialog").dialog({
      buttons: {            
       "OK": function () {
         $(this).dialog("close");                       
         }
       }
      });
     $("#dialog").dialog("open");                   
   });
  }