今天用ajax的post请求后台,但是始终不执行回调函数,经查得知,ajax不执行回调函数的原因如下:
jquery中规定返回的JSON字符串的KEY要用引号括起来,如{“result”: 1}这样才可以。
所以是数据返回的格式问题,如把dataType设置为json,那么就需要按照json的格式将数据返回,如设置为text,则无需是json的数据格式。
$.ajax({
type:'post',
url:'${MH}/projectSectionForPerson/loadCompanyName',
data:{companyId:companyId},
async:true,
dataType:'json',
success:function(data){
console.log(data);
$("#company_name").val(data.companyName);
},
error:function(response){ alert("error"); }
});
/**
* 异步加载公司名称
*/
public void loadCompanyName(){
String companyId = getPara("companyId");
String companyName = CorpEnterpriseModel.dao.getNameById(companyId);
renderJson("companyName",companyName);
}