我正在使用asp.net PageMethods.So这里是我从javascript调用方法的方式
function hello()
{
var a =10;
PageMethods.SaveData(JSON.stringify(basicInfo), SaveSuccessCallback, SaveFailedCallback);
}
这是我的成功回电条件
function SaveSuccessCallback(response) {
//handle success code here
ShowEdit();
}
现在我想根据hello函数中的变量ShowEdit()
来处理a
。
问题是我不知道是否可以将a
从hello
传递到SaveSuccessCallback
。
Note:
我不能使a
全球化。
答案 0 :(得分:3)
您可以使用closure:
var a = 10;
PageMethods.SaveData(
JSON.stringify(basicInfo),
function(response) {
SaveSuccessCallback(response);
ShowEdit(a);
}, SaveFailedCallback);
function SaveSuccessCallback(response) {
//handle success code here
}
您可能更喜欢通过用另一种方法包装闭包来使它更清洁:
PageMethods.SaveData(
JSON.stringify(basicInfo), SaveSuccessCallback(10), SaveFailedCallback);
function SaveSuccessCallback(a) {
return function(response) {
//handle success code here
ShowEdit(a);
};
}