Jquery 函数停止工作

发布于 2025-01-03 15:23:02 字数 1266 浏览 0 评论 0原文

我已经使用这个脚本有一段时间了,突然它停止工作并返回错误消息。我找不到代码的任何错误,并且 php 页面回显有效的 json。如果有人发现此代码有错误或有问题,请告诉我。我在其他地方使用相同的脚本就很好。

前往: http://ab-mobile-apps.com/app/grotto/index.html 然后点击随机饮料看直播。单击错误消息将再次调用该函数。

先谢谢了。

function loadData() {                              
    var output = $('#output');
    var drinkImageOutput = $('#drinkImage');
    var drinkIngredientOutput = $('#drinkIngredient');
    var drinkNameOutput = $('#drinkName');

    output.text('');

    $.ajax({

        url: 'http://ab-mobile-apps.com/grototest/index.php',
        dataType: 'jsonp',
        jsonp: 'jsoncallback',
        timeout: 10000,
        success: function(data, status){
        $.each(data, function(i,item){
        var landmark = 
            '<div id="drinkImage"><img src="' + drinkImg + '" width="15%" /></div>' + 
            '<div id="drinkName">' + drinkName + '</div>' +
            '<div id="dringIngredient">' + dringIngredient + '</div>';


        output.append(landmark);
        });
        },
        error: function(){
        output.text('There was an error loading the data.');
        }
    });            
}

I have been using this script for a while and suddenly it just stopped working and returns the error message. I cannot find any errors with the code and the php page echoes valid json. Please if anyone can find an error or something wrong with this code let me know. I am using the same script other places just fine.

Go to:
http://ab-mobile-apps.com/app/grotto/index.html
then click random drink to see live. Clicking the error message will call the function again.

Thanks ahead.

function loadData() {                              
    var output = $('#output');
    var drinkImageOutput = $('#drinkImage');
    var drinkIngredientOutput = $('#drinkIngredient');
    var drinkNameOutput = $('#drinkName');

    output.text('');

    $.ajax({

        url: 'http://ab-mobile-apps.com/grototest/index.php',
        dataType: 'jsonp',
        jsonp: 'jsoncallback',
        timeout: 10000,
        success: function(data, status){
        $.each(data, function(i,item){
        var landmark = 
            '<div id="drinkImage"><img src="' + drinkImg + '" width="15%" /></div>' + 
            '<div id="drinkName">' + drinkName + '</div>' +
            '<div id="dringIngredient">' + dringIngredient + '</div>';


        output.append(landmark);
        });
        },
        error: function(){
        output.text('There was an error loading the data.');
        }
    });            
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

待"谢繁草 2025-01-10 15:23:02

您的请求返回 JSON 而不是 JSONP。
尝试:

$.ajax({
    url: 'http://ab-mobile-apps.com/grototest/index.php',
    dataType: 'json',
    timeout: 10000,
    success: function(data, status){
    $.each(data, function(i,item){
    var landmark = 
        '<div id="drinkImage"><img src="' + item.url + '" width="15%" /></div>' + 
        '<div id="drinkName">' + item.sname + '</div>' +
        '<div id="dringIngredient">' + item.ingredients + '</div>';


    output.append(landmark);
    });
    },
    error: function(){
    output.text('There was an error loading the data.');
    }
}); 

Your request returns JSON not JSONP.
Try:

$.ajax({
    url: 'http://ab-mobile-apps.com/grototest/index.php',
    dataType: 'json',
    timeout: 10000,
    success: function(data, status){
    $.each(data, function(i,item){
    var landmark = 
        '<div id="drinkImage"><img src="' + item.url + '" width="15%" /></div>' + 
        '<div id="drinkName">' + item.sname + '</div>' +
        '<div id="dringIngredient">' + item.ingredients + '</div>';


    output.append(landmark);
    });
    },
    error: function(){
    output.text('There was an error loading the data.');
    }
}); 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文