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

来源:互联网 发布:java 高并发高可用 编辑:程序博客网 时间:2024/05/29 12:27

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="基础域名"; //这句话是为了使域名相同,解除跨域的限制,详见:http://blog.csdn.net/yaoyuan_difang/article/details/8158847

  3.关于跨域提交还有很多其它的解决办法,详见:http://blog.csdn.net/yaoyuan_difang/article/details/8158932