submit()函数和send()JavaScript函数之间有什么区别?
问题描述:
我一直在学习一本书的JavaScript。有一次,我与有关客户端 - 服务器站点通信代码打,我想做与下面的代码POST请求(使用IE ActiveX对象的XMLHttpRequest):submit()函数和send()JavaScript函数之间有什么区别?
<script type="text/javascript">
var oRequest = HTTPRequestUtil.getXmlHttp();
var sRequestType = "post";
var sURLofRequest = "MyPage.aspx";
var bAsnychronously = false;
oRequest.open(sRequestType, sURLofRequest, bAsnychronously);
oRequest.send(null);
alert ('Status is '+oRequest.status+' ('+oRequest.statusText+')');
alert ('Response text is '+oRequest.responseText);
</script>
我有断点的在Page_Load事件处理程序MyPage.aspx“页面,当期待这个HttpRequest出现时,执行将会停止在这个地方(这是在html按钮上点击)
事情是,请求完成,responseText是获得(这是页面的xml内容),并且没有停止在Page_Load方法,我已经放置了一个断点。因此,现在我无法理解调用.send()函数与POST请求类型和submit()函数之间的区别。
如果您能简单地解释主要区别,我将不胜感激。
谢谢!
答
不同的是,使用send
将数据发回给JavaScript调用程序无需重新加载页面,但在窗体上调用submit
表单提交给服务器,然后就好像用户已经从服务器重新加载结果点击表格的提交按钮。
“发送”就是所谓的Ajax,例如,它是如何将Stackoverflow投票按钮发送回服务器而不重新加载整个页面的。
谢谢。 这里的示例(http://msdn.microsoft.com/en-us/library/ms535874%28VS.85%29.aspx)与您的说法是平行的:“'send'是所谓的Ajax “。 – pencilCake 2009-11-09 11:59:12
@pencilCake他应该简单地说'send'用于** AJAX ** PERIOD! – 2015-11-20 13:46:27