因为你提交的时候是异步提交,Ext.Ajax.request默认是异步的,所有先执行的是return result;所以给Ext.Ajax.request添加属性
async: false,
就可以得到你要的值了。
这样不行的
成功返回的数据在success的参数里面
function classSchool(value){
Ext.Ajax.request({
url : 'educationalManage/educationalManageAction!getClassSchool',
params: { classID: 'value' },
success: function (response, option) {
var obj = Ext.JSON.decode(response.responseText);
obj.classschool///你要的东西
}
});
function classSchool(value){
Ext.Ajax.request({
url : 'educationalManage/educationalManageAction!getClassSchool',
params: { classID: 'value' },
success:function(r){
return r.responseText;
}
});
};
function classSchool(value){
var result;
Ext.Ajax.request({
url:'test.aspx?cmd=getclsh',
params:{classID:value},
success:function(response,result){
var data = Ext.decode(response.responseText);
result = data.value;
alert(result+'____');
},
failure:function(){
Ext.Msg.alert('提示','数据库连接错误!');
return 0;
}
});
return result;
}
alert(classSchool('11111'));
后台:
if (cmd == "getclsh")
{
string classID = Request["classID"].ToString().Trim();
res = "{value:'22222'}";
Response.Write(res);
Response.End();
}
这样是不行的,测试得出的结果为先提示“undefined”在提示“22222___";