weixin_33671935 2016-08-15 16:37 采纳率: 0%
浏览 40

将jsonp与Ajax HTML结合使用

I have a simple html page that I open directly, file://abc.html

It has the following code

  $.ajax({
        url: "http://localhost:8080/ajax_info.php",
        dataType: "jsonp",
        jsonp: 'jsoncallback',
        success: function(data) {
            alert(data);
        }
    });

ajax_info.php has echo 'hello' only in it.

On each reload the Network tab in chrome shows that a request is made to

http://localhost:8080/ajax_info.php?jsoncallback=jQuery1111016803214247142373_1471278920224&_=1471278920236

and hello as a response is received but I dont get the alert box.

When I execute the page it shows nothing (no alert box), I am supposed to get alert with hello in it, Am I doing something wrong ?

  • 写回答

2条回答 默认 最新

  • H_MZ 2016-08-15 16:45
    关注

    Try adding this function to yours:

    function jsoncallback(json){
     alert(json);
    }
    

    EDIT: and when you want to use JSONP the server should echo params in the function you want:

    do this on server

    echo 'jsoncallback("hello!")';
    

    or this:

    echo 'jsoncallback('. json_encode($some_data) .')';
    

    Of course 'jsoncallback' is the name of user function, that any user may want to change, so you have to do it right way:

    echo $user_sent_me_this_name . '(' . json_encode($some_data) . ')';
    
    评论

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵