相关疑难解决方法(0)

在ajax/jquery调用中使用success函数之外的变量

我有以下代码

var test;
     $.ajax({
        type: "GET",
        url: "../views/person/controller.php?actor=person&action=checkAge",
        data: "age=" + value,
        success: function(msg){
            console.log(msg);
            test = msg; 
        },
    });
    Validate.fail(test);
Run Code Online (Sandbox Code Playgroud)

现在测试变量应该像控制台所说的那样给出错误.但测试变量给了我不明确的原因?

javascript ajax jquery

17
推荐指数
3
解决办法
3万
查看次数

如何从函数外部的JSONP调用返回结果?

我有以下功能很好,我使用JSONP来克服跨域,写了一个http模块来改变内容类型,并没有在url中追加一个回调名称.

function AddSecurityCode(securityCode, token) {
var res=0;
$.ajax({ url: "http://localhost:4000/External.asmx/AddSecurityCode",
    data: { securityCode: JSON.stringify(securityCode),
        token: JSON.stringify(token)
    },
    dataType: "jsonp",
    success: function(json) {
        alert(json); //Alerts the result correctly
        res = json;
    },
    error: function() {
        alert("Hit error fn!");
    }
});
return res; //this is return before the success function? not sure.
Run Code Online (Sandbox Code Playgroud)

}

res变量是alwayes未定义.而且我不能在jsonp中使用async = false.那么如何才能将结果返回到函数外部?我肯定需要为次要的电话做这件事.

请指教,谢谢.问题是我无法在此函数之外返回结果值

javascript ajax jquery json jsonp

2
推荐指数
1
解决办法
1763
查看次数

标签 统计

ajax ×2

javascript ×2

jquery ×2

json ×1

jsonp ×1