2012-06-11 30 views
0

我想从浏览器使用URL加载数据。现在我正在使用JavaScript。如何从JavaScript中的浏览器加载XML数据

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. 
     } 

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

回答

0

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

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

所以它在返回时执行。

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

相关问题