jquery 在IE中无法用post解析XML问题

来源:互联网 发布:java 正则表达式怎么用 编辑:程序博客网 时间:2024/05/17 02:40

/******1,Content-Type
    很多时候无法解析就是Content-Type的问题。
    如果本身就是xml文件,请跳过这一步
    动态生成的XML一定要将其设置为text/xml,否则默认就是text/html也就是普通的文本了。
    常见语言的Content-Type设置*********/
    
    header("Content-Type:text/xml"); //php
    response.ContentType="text/xml" //asp
    response.setHeader("ContentType","text/xml");  //jsp
    /******
    2,xml结构。
   
    <?xml version="1.0" encoding="UTF-8"?>
    <stulist>
    <student email="1@1.com">
    <name>zhangsan</name>
    <id>1</id>
    </student>
    <student email="2@2.com">
       <name>lisi</name>
    <id>2</id>
    </student>
    </stulist>
    
    /******
    3,解析
    $.post(
url, data, callback, type);
    


另外提及一點,在使用 jQuery.post( url, data, callback, type ) 方法開發時,這個方法的最後一個參數 type 指的是回應資料的資料類型,其中包括有 "xml", "html", "script", "json", "jsonp", 與 "text" 等類型,即便你手動修改成 "xml" 而你的 Web Service 回應的資料所設定的 Content-Type 不是 text/xml 的話,在 IE 瀏覽器裡一樣是無法運作的,甚至會造成 JavaScript 執行階段錯誤。當不指定 type 參數時,預設 jQuery 會聰明的自動判斷回應的 Content-Type 自動判斷應解析的資料類型,這部分我是從 jQuery.ajax( options ) 看到的,    
最后补充一条:保证服务器端是utf-8的编码,否则会乱码!同时也要保证你的xml文件也是utf-8格式的。

原创粉丝点击