ajax跨域(基础域名相同)表单提交的方法

所属分类: 网络编程 / AJAX相关 阅读数: 479
收藏 0 赞 0 分享

本文实例讲述了ajax跨域(基础域名相同)表单提交的方法。分享给大家供大家参考。具体如下:

1.要在做ajax提交的页面中添加如下js语句:

<script type="text/javascript"> 
  document.domain="基础域名"; 
</script> 

2.ajax表单提交表单时可以使用一个jquery的一个表单插件jquery.form.js

使用语法如下:

//fromPost为要收集数据的form表单的id  
$("#formPost").ajaxSubmit({ 
  url:"跨域的业务处理地址", 
  cache:false, 
  dataType:"html", 
  iframe:true, 
  success:function (data){ 
 //返回如果是json可以这样处理一下,xml格式需要做其它的处理
 eval("data="+data); 
   if(data.flag == 'OK'){ 
   }
});

3.跨域的业务处理的返回值中必需含有以下语句

<script type="text/javascript">
  document.domain="基础域名";
</script>

4.剩下的返回值可以是json,xml格式或其它自定义的格式,只要客户端能够解析出想要结果就可以

5.这样在做ajax提交的页面中就可以取到表单跨域提交后的返回值了,取到返回值后就可以接着做其它的处理了

说明:

1.基础域名:两个及两个以上域名的公有部分,公有部分至少要包含二级域名或二级域名之上的部分

2.document.domain="基础域名"; //这句话是为了使域名相同,解除跨域的限制,详见:《js设置document.domain实现跨域的注意点分析

3.关于跨域提交还有很多其它的解决办法,如:《js同源策略详解

希望本文所述对大家的javascript程序设计有所帮助。

更多精彩内容其他人还在看

Baidu Musicbox 用到的ajax代码

Baidu Musicbox 用到的ajax代码
收藏 0 赞 0 分享

[asp]天枫AJAX百度音乐即时听附下载

[asp]天枫AJAX百度音乐即时听附下载
收藏 0 赞 0 分享

[asp]天枫AJAX blog V1.0 程序提供下载了

[asp]天枫AJAX blog V1.0 程序提供下载了
收藏 0 赞 0 分享

如何解决远程页面抓取中的乱码问题

如何解决远程页面抓取中的乱码问题
收藏 0 赞 0 分享

一个方便AJAX开发的通用类

一个方便AJAX开发的通用类
收藏 0 赞 0 分享

AJAXRequest v0.2

AJAXRequest v0.2
收藏 0 赞 0 分享

一个简单的AJAX请求类

一个简单的AJAX请求类
收藏 0 赞 0 分享

一个Ajax类

一个Ajax类
收藏 0 赞 0 分享

AJAX 常用函数

AJAX 常用函数
收藏 0 赞 0 分享

[ASP.NET Ajax] ECMAScript基础类以及Asp.net Ajax对类&lt;Object&gt;的扩展

[ASP.NET Ajax] ECMAScript基础类以及Asp.net Ajax对类&lt;Object&gt;的扩展
收藏 0 赞 0 分享
查看更多