Javascript 为什么在IE10的我的网页中运行jQuery html()时失败

Javascript 为什么在IE10的我的网页中运行jQuery html()时失败,javascript,jquery,internet-explorer,Javascript,Jquery,Internet Explorer,这是从我的页面中提取的代码: 它试图做的是根据同一行中其他单元格的内容将WellName值转换为链接 它在JSFIDLE的IE10中运行良好,但在实际应用程序中,它在.html()调用中失败。IE 10上出现错误“对象不支持此属性或方法”。其他浏览器工作正常 cells.eq(wellNameColumnIndex).html(('<a href="' + link + '" target="_blank">' + wellName + '</a>')); Stack

这是从我的页面中提取的代码:

它试图做的是根据同一行中其他单元格的内容将WellName值转换为链接

它在JSFIDLE的IE10中运行良好,但在实际应用程序中,它在.html()调用中失败。IE 10上出现错误“对象不支持此属性或方法”。其他浏览器工作正常

cells.eq(wellNameColumnIndex).html(('<a href="' + link + '" target="_blank">' + wellName + '</a>'));

Stack trace:
    clean, jquery-1.7.2.min.js, line 4
    buildFragment, jquery-1.7.2.min.js, line 4
    domManip, jquery-1.7.2.min.js, line 4
    append, jquery-1.7.2.min.js, line 3
    Anonymous function, jquery-1.7.2.min.js, line 4
    access, jquery-1.7.2.min.js, line 2
    html, jquery-1.7.2.min.js, line 4
    Anonymous function, cntrl.table.js, line 104
cells.eq(wellNameColumnIndex.html(“”));
堆栈跟踪:
clean,jquery-1.7.2.min.js,第4行
buildFragment,jquery-1.7.2.min.js,第4行
domManip,jquery-1.7.2.min.js,第4行
追加,jquery-1.7.2.min.js,第3行
匿名函数,jquery-1.7.2.min.js,第4行
access,jquery-1.7.2.min.js,第2行
html,jquery-1.7.2.min.js,第4行
匿名函数,cntrl.table.js,第104行
在clean中,它被固定在p.innerHTML=n[1]+l+n[2]。在调试器中检查p会发现它没有innerHTML。p似乎是一个具有属性baseName“div”的对象,但输入字符串中没有div标记。嗯

用.text替换.html是可行的,但单元格值不再是链接,而是实际的标记。同样,更改为.html(“anytext”)也会失败,并出现相同的错误

有人能帮你解开这个谜团吗?

.html()
在IE中,作为参数使用的html必须格式完美。它不会容忍任何错误(因为Chrome和Firefox会尝试清理错误)

确保您输入的HTML对您使用的doctype有效

$("#selector").html("<p>Hello World!</p>"); //works

$("#selector").html("<span>Derp</div>"); //does not work
$(“#选择器”).html(helloworld!

”//作品 $(“#选择器”).html(“Derp”)//不起作用 IE中的
.html()
要求用作参数的html格式完美。它不会容忍任何错误(因为Chrome和Firefox会尝试清理错误)

确保您输入的HTML对您使用的doctype有效

$("#selector").html("<p>Hello World!</p>"); //works

$("#selector").html("<span>Derp</div>"); //does not work
$(“#选择器”).html(helloworld!

”//作品 $(“#选择器”).html(“Derp”)//不起作用
请注意:jQuery 1.7没有针对这个新浏览器进行测试。你不升级的原因是什么?如果它在JSFIDLE上运行良好,那么在live页面上可能有其他东西干扰了它。可能是重复的身份证?是否有多余的逗号?您还可以替换
.html((''+wellName+'')
.html(wellName)。请注意:jQuery 1.7未针对此新浏览器进行测试。你不升级的原因是什么?如果它在JSFIDLE上运行良好,那么在live页面上可能有其他东西干扰了它。可能是重复的身份证?是否有多余的逗号?您还可以替换
.html((''+wellName+'')
.html(wellName)。如JSFIDLE所示,html输入似乎格式良好。这是一个表字符串。正是这段代码。如JSFIDLE所示,html输入似乎格式良好。这是一个表字符串。正是这个代码。