jQuery-数据提交(表单与Ajax Post)

jQuery-数据提交(表单与Ajax Post),jquery,post,form-submit,Jquery,Post,Form Submit,我对其他开发者关于发布数据的意见和想法感兴趣: 本机HTML: vs jQuery:jQuery.post(),或$.ajax() 目前,我出于不同的原因使用这两种方法,就我个人而言,我以各自的方式享受这两种方法 我已经注意到jQuery路线在随机情况下的细微差别,这就是为什么我要征求意见的原因 我会尽力解释我在做什么。 但基本上(在特定的表单页面上),我使用jQuery禁用提交,并在不重新加载浏览器的情况下发布表单数据 有时是这样的: http://myurl.com/simple_form.

我对其他开发者关于发布数据的意见和想法感兴趣:

本机HTML:

vs

jQuery:
jQuery.post()
,或
$.ajax()

目前,我出于不同的原因使用这两种方法,就我个人而言,我以各自的方式享受这两种方法

我已经注意到jQuery路线在随机情况下的细微差别,这就是为什么我要征求意见的原因

我会尽力解释我在做什么。 但基本上(在特定的表单页面上),我使用
jQuery
禁用
提交,并在不重新加载浏览器的情况下发布表单数据

有时是这样的:

http://myurl.com/simple_form.php?formid=myemailFORM&email1=blah@blah.yo&email2=blah@blah.ma
simple_form.php

<form class="checkMyForm" id="myemailFORM">
  <input name="email1" type="text" value="blah@blah.yo" />
  <input name="email2" type="text" value="blah@blah.ma" />
  <input type="submit" name="button" value="submit" />
</form>

<script language="javascript" type="text/javascript">
$(document).ready(function(){

   $("form.checkMyForm").on('submit', function(){
      // do some stuff here (validation, clean-ups, who knows what else....)
      // stop if problems are detected:
      return false;

      // if good to go, use ajax(), for this page:
      var formid = $(this).attr("id");  // #myemailFORM 
      var formvaluesSerialized = $(this).serialize(); // key=val&key=val

      $.ajax({ 
         url:"simple_form.php", // stay on current page (php code is listening)
         data:"formid="+formid+"&"+formvaluesSerialized,
         type:"POST",
         cache:false,
         error:function(x,t,m){ /* alerts, logs, maybe freak out here  */ },
         success:function(response){

             /* do stuff here, and never redirect 
                use the "response" for any reason I'd like
             */

         }

      }); //eof ajax()

      return false; // ensure the html form still does not submit
   }); //eof on()

}); 
</script>
我只需更改url:[,然后重新提交,jQuery不需要重新加载浏览器,数据被发布,一切都很好。(所以它是随机的、稀疏的)

这会发生在任何人身上吗?
或者说浏览器有时会在自己的时间里用JavaScript出错,这是安全的吗


想法?

通常,每当我们需要将客户机提交的数据传递给服务器时,就会使用
$\u POST
方法,之后我们希望在服务器处理数据时向客户机呈现更新的页面(或完全不同的页面)

至于AJAX,当我们希望客户端将一些数据传递给服务器,同时保持客户端在同一页面上,并在服务器响应时仅更新该页面的一部分时,通常使用AJAX

在您的情况下,根据您的URL:

http://myurl.com/simple_form.php?formid=myemailFORM&email1=blah@blah.yo&email2=blah@blah.ma
提交了一个
$\u-GET
请求-当我们希望客户端从服务器请求一些数据时,通常使用该请求。您可以将
$\u-GET
请求与
$\u-POST
请求区分开来,因为在使用
$\u-GET
时,URL将具有
?…&…
结构

可能在您看到这个
$\u GET
请求的情况下,您将表单方法指定为GET:

<form class="checkMyForm" id="myemailFORM" method="GET">


wh..wha..wha..wha..wha..wha..wha..wha..wha..wha..wha..wha..wha..wha..wha..wha..wha..wha..wha..wha..wha..wha..wha..wha..wha..wha..wha..wha...你在使用什么浏览器?我从来没有遇到过这种情况。使用该url的原因是因为
GETe
),然后调用
e.preventDefault()
在开始时正确-这将始终抑制默认行为,即使函数的后续部分失败,也允许您检查控制台中的错误。