我有一个功能:
function openOpportunityHome() {
showSpinner("Loading.Please wait ");
Ext.Ajax.request({
url : contextPath + '/OpportunityTracker.do',
method : 'POST',
params : {
'role' : SALES_TRACKER_ROLE
},
success : function(response, request) {
hideSpinner();
MD_opportunityMasterDataVO = Ext
.decode(response.responseText);
ADMIN_OPP_LIST_FLAG =MD_opportunityMasterDataVO.adminOppListFlag;
showOpportunitySearch();
},
failure : function(response, request) {
hideSpinner();
ajaxFailureCallbackFn(response, request);
}
});
}
当我致电Ext.decode(response.responseText)
时,到底发生了什么?请从请求/响应范围的角度讲述。
答案 0 :(得分:6)
Ext.decode()
只是一个类似于JSON.parse()
的JSON解析器,它将一串文本解析为您可以在Javascript中访问的对象。
它实际上是Ext.JSON.decode()
的别名。
您可以在ExtJS文档中阅读有关here的更多信息。
答案 1 :(得分:1)
您可以使用3种方法来解析响应。
基本上response.responseText将采用String格式。 解码后,它将成为一个对象。如果响应为null,则decode方法将抛出错误。