温馨提示:本文翻译自stackoverflow.com,查看原文请点击:javascript - getAttribute(value) returns null even when the value exists when running the code locally
asp.net internet-explorer-11 javascript visual-studio-2012 windows-10

javascript - 即使在本地运行代码时,即使该值存在,getAttribute(value)也会返回null

发布于 2020-03-31 23:19:20

我正在尝试调试ASP.Net网站。该代码使用Visual Studio 2012调试,并在Windows 10计算机上使用IIS Express在本地运行。该Web应用程序需要使用Internet Explorer 11运行。

运行代码时,我在页面上的JavaScript中获得了Visual Studio捕获的异常(下面未显示的一段代码)。我知道一个事实,该代码已经投入生产,并且100%有效。但是,当我在本地调试代码时,它无法按预期工作。

这是有问题的代码:

var elements = document.getElementsByTagName('input');
for(var i = 0; i < elements.length; i++) {
    var value = elements[i].getAttribute('value');
    //....
}

当我在本地运行代码时,elements[i].getAttribute('value')返回null。但是,当我在生产环境中运行相同的代码时,效果很好。调试代码时,我可以看到的elements[i]值存储在“值”属性中,但上面的代码仍返回null。

我不允许更改代码(由于某些原因),并且由于我的同事能够使用相同的设置在其计算机上运行代码,因此我倾向于认为这是我的计算机在Visual Studio或Windows中的配置问题其他的东西。

对于可能的原因,我欢迎任何建议。

查看更多

提问者
Toni Kostelac
被浏览
71
Toni Kostelac 2020-01-31 19:22

经过更多搜索并与同事交谈后,建议我在Internet Explorer中打开企业模式(工具->企业模式)。

为此,根据文章,使喜欢它的页面会在IE8被渲染。据我所知,它也解决了我所看到的问题。

我希望这可以在将来对某人有所帮助。