0

我正在尝试使用 URL 从浏览器加载数据。现在我正在为此使用javascript。

window.onload = function()
        {
            // this is URL from which i want to load data. 
            // myURL in this xml file is there. (myURL is running in localhost)
            var url = "myURL&callback=processDATA"; 
            loadDATA(url);
        }

function loadDATA(url)
        {

            var headId = document.getElementsByTagName('head')[0];
            var newScript = document.createElement('script');
            newScript.type = 'text/javascript';
            newScript.src = url;
            headId.appendChild(newScript);
        }

function processDATA(feed) //this is function that is called after loadDATA(url).
        {
             // i want my XML file in feed variable. 
             // But this function is not called after  loadDATA.
        }

我不知道该怎么办。请帮我。

4

1 回答 1

0

此函数意味着服务器 API 知道使用 JSONP 的“回调”参数包装您的函数。您是否也在创建返回 XML 的服务器 API?如果是这样,您需要让它检查是否存在回调查询字符串参数,然后它将用于返回数据。这就是它在 c# 中的样子:

if (request.QueryString["callback"] != null)
    response.write(request.QueryString["callback"] + "('" + xmldata + "');");

所以它在返回时执行。

如果这是一个公共 API,请找出他们是否有 jsonp 的特定回调参数名称。它通常被称为 jsoncallback。

于 2012-06-11T06:25:58.353 回答