javascript - ajax jsonp我写的方法怎么调用不了? 为什么用$.getJSON方法能生成数据?
ringa_lee
ringa_lee 2017-04-11 13:13:43
[JavaScript讨论组]

http://jsbin.com/curofericu/e...

//   $.getJSON("http://www.runoob.com/try/ajax/jsonp.php?jsoncallback=?", function(data) {
    
//     var html = '
    '; // for(var i = 0; i < data.length; i++) // { // html += '
  • ' + data[i] + '
  • '; // } // html += '
'; // $('#pCustomers').html(html); // });

我把上面的方法转成ajax的方法

$.ajax({
  method: "post", //get/post试过了 
  async: false,
  url: "http://www.runoob.com/try/ajax/jsonp.php",
  dataType: "jsonp",
  jsonp: "jsoncallback",//传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(一般默认为:callback)
  jsonpCallback:"?",//自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名,也可以写"?",jQuery会自动为你处理数据
  success: function(data){
  var html = '
    '; for(var i = 0; i < data.length; i++) { html += '
  • ' + data[i] + '
  • '; } html += '
'; $('#pCustomers').html(html); }, error: function(){ alert('fail'); } });

为什么会进入error啊
好奇怪。
如何正确使用ajax jsonp里面的方法 。

案例http://www.runoob.com/json/js...

ringa_lee
ringa_lee

ringa_lee

全部回复(2)
大家讲道理

jsonpCallback:"?",//自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名,也可以写"?",jQuery会自动为你处理数据

API中并没有这么说过。去掉这个就行

阿神

注掉jsonpCallback, 问号只在参数里用,启用该参数的话,传的是你定义的方法名, 不要设置用系统的即可
另 jsonp 只可能是GET, 没有POST(当然, 该模式下其实是会忽略method和async设置的)

$.ajax({
  method: "post", //get/post试过了 
  async: false,
  url: "http://www.runoob.com/try/ajax/jsonp.php",
  dataType: "jsonp",
  jsonp: "jsoncallback",//传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(一般默认为:callback)
  //jsonpCallback:"?",//自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名,也可以写"?",jQuery会自动为你处理数据
  success: function(json){
  var html = '<ul>';
  for(var i = 0; i < data.length; i++)
  {
  html += '<li>' + data[i] + '</li>';
}
       html += '</ul>';

       $('#pCustomers').html(html); 
},
  error: function(){
    alert('fail');
  }
});
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号