2013-10-30 158 views
0

我正在尝试编写简单的客户移动页面。 在第一页上,我有每个客户的名字。其中一个的onclick,它打开这个文件包含下面的代码,但是没有加载数据。但是,如果我尝试刷新页面,它的工作原理!ajax data not loading


<script type='text/javascript' language='javascript'> 
window.onload=function() 
{ 

    url = 'http://whateverorigin.org/get?url=' + 
    encodeURIComponent('http://www.mydomain.com/myphpfile.php') + '&callback=?'; 
    $.ajax({ 
     url: url, 
     dataType: 'json', 
     timeout: 4000, 
     success: function(reponse){ 
     a=reponse.contents.split(';'); 
     document.getElementById("client").innerHTML = a[0] ; 
     document.getElementById("adresse1").innerHTML = a[1] ; 
}, 

}); 

} 

</script> 
+0

其中的类型? type ='get'或type ='post'? – underscore

+0

@samitha jquery默认为'GET',我假定他想要,基于他处理响应数据的方式。 – jaredrada

+0

这是因为你已经在window.onload中写入了ajax调用。 – Saranya

回答

1

首先你不需要包括'&callback=?'; PARAM如jQuery将自动处理,只要你有dataType: 'JSONP'

$(document).ready(function(){ 
    var encoded = encodeURIComponent('http://www.mydomain.com/myphpfile.php'); 

    $.ajax({ 
     url: 'http://whateverorigin.org/get?url='+encoded, 
     dataType: 'jsonp', 
     timeout: 4000 
    }).done(function(reponse){ 
     //do your work 
    }) 
}) 
+0

谢谢你的工作! 在同一subjet另一个问题: 阿贾克斯不发送数据参数,PHP文件 - >数据:{ 'numcli':ID}, 在我的PHP文件:无阅读: $阿贾克斯({ URL: 'http://whateverorigin.org/get?url='+encoded, 类型:' GET”, 数据类型: 'JSONP', 数据:{ 'numcli':ID},// *** php文件 <?php // code $ id = $ _GET ['numcli']; // $ id似乎为空 ?> – gouly

+0

非常感谢您的回答,它解决了我的问题,我有一个问题。非英文字符在检索html时很奇怪(正方形)。我用小提琴来检查它,似乎无论发送什么奇怪的字符。我已经发送了charset,contentTYpe和scriptCharset(Utf-8)。 – user217648