AJAX成功函数无法加载

时间:2013-11-17 12:43:42

标签: jquery html ajax

我正在尝试使用AJAX调用URL,它提供200 OK,但是没有加载成功函数。

非常感谢任何帮助。

$(document).ready(function () {
    $("#resulttable tr:even").addClass('grey');
    $("#resulttable tr:odd").addClass('litegrey');

    $(".upload_file").change(function () {
        $("#fakefile").text($(".upload_file").val());
    });

    $("tr").click(function () {
        $(this).after("<tr><td colspan=5><td></tr>");
        $(this).next("tr").find("td").text(loadText());

    });
});

function loadText() {
    $.ajax({
        type: "GET",
        url: "http://www.google.com",
        success: function (dataCheck) {
            alert("hello");
        }
    })
};

由于

2 个答案:

答案 0 :(得分:0)

你没有退货。

function loadText() {
    $.ajax({
        type: "GET",
        url: "http://www.google.com",
        success: function (dataCheck) {
            alert("hello");
            return dataCheck;
        }
    })
};

此外,您正在尝试执行跨域ajax请求,该请求不会返回200状态,您是否真的尝试使用Google做某事?

您需要将JSONP用于跨域ajax。

答案 1 :(得分:0)

您无法从ajax之类的异步函数返回值,您需要使用回调模式来解决此问题。

$(document).ready(function () {
    $("#resulttable tr:even").addClass('grey');
    $("#resulttable tr:odd").addClass('litegrey');

    $(".upload_file").change(function () {
        $("#fakefile").text($(".upload_file").val());
    });

    $("tr").click(function () {
        $(this).after("<tr><td colspan=5><td></tr>");
        loadText(function (text) {
            $(this).next("tr").find("td").text(text);
        })


    });
});

function loadText(callback) {
    $.ajax({
        type: "GET",
        url: "http://www.google.com",
        success: function (dataCheck) {
            alert("hello");
            callback(dataCheck)
        }
    })
};

Read this question