我希望存储一个由AJAX函数返回的值,这是我的代码,它在AJAX成功中表现良好,但是在存储那些未定义的数据时。
以下serviceNumber
,我存储了enCrypt
返回值
var serviceNumber = enCrypt(typeofServiceNumber);// when am catching the function data which is saying "undefined"
以下代码是我的ajax函数
function enCrypt(id) {
if (id > 0) {
$.ajax({
url: $("baseUrl").html() + "JobProfiles/Encryption",
type: "POST",
dataType: "json",
data: { Id: id },
success: function (encdata) {
return encdata;
},
error: function (data) {
$('#loading').hide();
}
});
}
}
你能帮助我知道我的代码有什么问题吗?提前谢谢。
答案 0 :(得分:0)
你不能像这样使用return,因为函数是async +它是函数中的一个函数...所以实际上是的,你不能回到那里xD
做一些像:
enCrypt(typeofServiceNumber);
//and in your ajax:
success: function (encdata) {
go_on(encdata);
},
//and then
function go_on(serviceNumber)
{
//here you can use it :D
}
答案 1 :(得分:0)
只需添加
即可 cache: false,
async: false,
给你ajax功能
function enCrypt(id) {
var encnum;
$.ajax({
url: $("baseUrl").html() + "JobProfiles/EncodeIds",
type: "POST",
cache: false,
async: false,
dataType: "Json",
data: { Ids: id },
success: function (encdata) {
encnum = encdata;
},
error: function (data) {
$('#loading').hide();
}
});
return encnum;
}