【发布时间】:2012-01-07 11:37:33
【问题描述】:
对不起,我的第一个版本的帖子不够精确/这里是带有示例代码的更新帖子
我正在使用 jquery 1.6.4 和 jquery mobile 1.0rc2/我首先必须承认我对 jquery mobile 比较陌生/我构建了几个 Web 应用程序,它们运行时没有更大的问题/突然从一秒钟到下一个我的应用程序损坏/仔细观察问题发现那些应用程序从我通过ajax jsonp请求检索的api提取json的所有应用程序/get url在?之后包含2个参数? ?auth_token 和 meta_prefix(加上自动生成的 jquery 回调参数)/问题似乎是 jquery 不再传递第二个参数/它只是在发送请求之前将其删除/对于所有损坏的网络应用程序都是如此/有任何人知道可能发生了什么变化?
请求中的 url 如下所示: http://myURL?auth_token=myToken&meta_prefix=m_ 然而,发送的 url 看起来像这样: http://myURL?auth_token=myToken&callback=jQuery16308668286966791752_1322474687995
奇怪的是,当我将参数名称更改为 metaprefix 而不是 meta_prefix 时,它会发送它但是这次将参数放在回调之后。这是怎么回事?
非常感谢任何帮助
以下是我用于通话的代码
$(function(){
$.ajax({
url: 'http://myURL?auth_token=myToken&meta_prefix=m_',
dataType: 'jsonp',
cache: true, // i need this to be set to true because otherwise jquery adds a cache parameter which the api i am using has problems with
success: function(data){
console.log(data);
$('#list1').append('<ul data-role="listview"></ul>');
listItems = $('#list1').find('ul');
$.each(data, function(key) {
html += '<p>From: '+data.array[key].m_total_resources+'</p>';
listItems.append('<li>'+html+'</li>');
});
// Need to refresh list after AJAX call
$('#list1 ul').listview();
}
});
})
我在这个问题上玩得更多,我发现使用另一个 api 只是为了测试,例如苹果搜索 apihttp://itunes.apple.com/lookup?id=909253&entity=album 我无法复制第二个参数问题/可能是我的缺乏理解,但 api 会在这个错误中发挥作用吗?或者参数附加到的url?如果我将 url 放在浏览器中,我会得到我期望的响应; 令人沮丧的是,前天一切正常
干杯
mac
【问题讨论】:
-
您能否添加一些我们可以查看的代码来诊断问题 - HTML / JavaScript 会很好..
-
请不要在系统上创建多个帐户。我已将您的两个帐户合并为一个包含问题的帐户。
标签: jquery ajax jquery-mobile jsonp url-parameters