在经历了几个有关此错误的stackoverflow帖子并且它们都没有实际适用于我的情况后,我在调试时在开发人员工具中的js文件中的一行中出现此错误: -
var el = $("#" + tagName);
el.val(el.html(value).text()); //this is the one where debugger points to
这是js文件中的相关代码: -
$.ajax({
type: "get",
url: "cgi-bin/system_status.cgi?tokn="+sessnID+",active="+tickle_activity+",id="+page_id+",sub="+sub_id+",tab="+tab_id,
dataType: "xml",
success: function (xml) {
errorCnt = 0;
$(xml).find('response').children().each(function () {
if (this.nodeName === "user_info") {
parseUserInfo(this);
}
else {
$(this).children().each(function () {
var tagName = this.tagName;
var value = $(this).text();
/* If this is a time block then do some translation */
if (tagName === "time") {
if (showTimeValues != undefined) { showTimeValues(this); }
}
else if (tagName === "satellite") {
if (parseSatDataXml != undefined) { parseSatDataXml(xml); }
}
else if (tagName === "ntpstatus") {
if (parseNtpDataXml != undefined) { parseNtpDataXml(xml); }
}
else if (tagName === "alarms") {
if (parseAlmDataXml != undefined) { parseAlmDataXml(xml); }
}
else if (tagName === "alarmSettings") {
if (parseAlmSettingDataXml != undefined) { parseAlmSettingDataXml(xml); }
}
else if (tagName === "status") {
setStatusTextColor(value);
setStatusButton(value);
$("#" + tagName).val(value);
}
else {
var el = $("#" + tagName);
el.val(el.html(value).text());//error thrown
}
});
}
});
只有在我有这个问题的IE中,在所有其他浏览器中它工作正常,除了调试工具中的错误之外我没有观察到任何其他内容。我使用的是IE9和最新的jquery版本1.12.1
答案 0 :(得分:0)
实际上,即使我在开发人员工具中使用IE9,也有一个选项,即浏览器模式:它被设置为IE7标准。这就是我收到此错误的原因。我切换到IE9标准的那一刻(不是兼容性的mdoe选项)。这一切都按预期工作。如果您不熟悉像我这样的Web开发,您可能会遇到此问题(不知道有浏览器模式)。
总而言之,
In debugger tools (F12) -> Click on browser mode and choose IE9
。
不要选择兼容性选项。