asp.net mvc - 当在IE8中更新表格元素时,MicrosoftMvcAjax.js会抛出javascript错误

4

在IE8或更早版本中,像TR和TD这样的某些元素不支持innerHTML。不幸的是,MVC 2项目中包含的MicrosoftMvcAjax.js文件在Ajax.BeginForm或Ajax.ActionLink中的Ajax更新方法中使用了innerHTML。

1个回答

1
要解决这个问题,请查看MicrosoftMvcAjax.js的第18行,并将其替换为以下内容:
Sys.Mvc.MvcHelpers.updateDomElement=function(target,insertionMode,content){if(target){switch(insertionMode){case 0:$(target).html(content);break;case 1:if(content&&content.length>0){$(target).html(content+target.innerHTML.trimStart());}break;case 2:if(content&&content.length>0){$(target).html(target.innerHTML.trimEnd()+content);}break;}}}

基本上,我删除了innerHTML调用,并将其替换为jQuery的html()。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接