• 客户端异步取服务端数据


    1.js可跨域

    convertServer={
    requestByScript: function(scriptId, dataHref, callback, charset, retry) {
            var isReady = false;
            if (callback) {
                if (typeof (callback) == "string") {
                    charset = callback;
                    callback = null;
                }
            }
            var head = document.getElementsByTagName("head")[0];
            var objScript = document.getElementById(scriptId);
            if (objScript && !document.all) {
                objScript.src = "";
                objScript.parentNode.removeChild(objScript);
                objScript = null;
            }
            if (objScript != null) {
                if (dataHref.indexOf("?") == -1) dataHref += "?";
                dataHref += "&" + Math.random();
                objScript.src = dataHref;
                var dataScript = objScript;
            } else {
                var dataScript = document.createElement("script");
                dataScript.id = scriptId;
                if (charset) {
                    dataScript.charset = charset;
                } else {
                    dataScript.charset = "GB2312";
                }
                dataScript.src = dataHref;
                dataScript.defer = true;
                dataScript.type = "text/javascript";
                head.appendChild(dataScript);
            }
            if (document.all) {
                dataScript.onreadystatechange = function() {
                    if (dataScript.readyState == "loaded" || dataScript.readyState == "complete") {
                        isReady = true;
                        if (callback) callback();
                    }
                }
            } else {
                dataScript.onload = function() {
                    isReady = true;
                    if (callback) callback();
                }
            }

            if (retry) {
                setTimeout(function() {
                    if (retry.times > 0 && !isReady) {
                        retry.times--;
                        if (dataHref.indexOf("?") == -1) dataHref += "?";
                        dataHref += "&" + Math.random();
                        convertServer.requestByScript(scriptId, dataHref, callback, charset, retry);
                    }
                }, retry.timeout);
            }
        },
        requestData:function(url,callBack)
        {
            var scriptId="jsReuest"+ Math.random();            
            convertServer.requestByScript(scriptId, url, callBack)         
        }

    }

    2. jQuery.ajax(options),不能跨域

  • 相关阅读:
    今天才知道还有这个地址 MS 的
    提供一个在线翻译,多语言互译的好网址.
    程序员有多少读过《人性的弱点》?项目经理呢?
    [下载]ASP.NET开发技巧集锦
    真不好意思,关于小猪妹(妖精)的
    poj 1330 LCA问题 (LCA问题转化为RMQ || tarjan算法)
    poj 2688 (bfs+dfs)
    Codeforces Round #143 (Div. 2) B
    poj 1160 dp
    poj 1032(整数拆分)
  • 原文地址:https://www.cnblogs.com/ylemzhang/p/1836028.html
Copyright © 2020-2023  润新知