我在 ASP.NET MVC 应用程序之上继承了一些 EXTJS 代码,并且我试图跟踪当 Ext.msg.prompt 框前面有一个带有“:”字符的字符串时发生的错误。这是似乎发生错误的方法:
var casePrompt = function() {
Ext.Msg.prompt("Numb", "", function(btn, text) {
if (btn == "ok") {
numbID = text.trim().toUpperCase();
Ext.Ajax.request({
url: "/location/method/" + numbID,
method: "GET",
callback: function(options, success, response) {
var reply = Ext.decode(response.responseText);
if (success) {
listOpen(reply.Data);
} else {
errorMsg(reply, function(button, text) { numbID = ""; });
}
}
});
}
});
};
如果一个数字按预期进入盒子,一切正常。但是,如果有人输入了相同的数字或任何有效数字,并且前面带有“:”,则该方法甚至在返回控制器之前就会出错。该错误仅显示“Microsoft JScript 编译错误:语法错误”并突出显示 ext-all-debug.js 中的以下代码:
doDecode = function(json){
return eval("(" + json + ;)');
}
有没有人以前见过这个并且知道捕捉这个错误的方法?我已经尝试在 VS2010 中逐步完成,但没有任何运气。
谢谢!