IE和Mozilla Firefox之间的Javascript行为差异?

Ben*_*Ben 0 javascript c# asp.net firefox internet-explorer

我有以下代码,应该更新标签说"请等待..",然后运行一个函数,然后再次更新标签,说它已完成:

<asp:Button ID="Button1" runat="server" Text="Upload"
                    onclientclick="document.getElementById('errorMessage').innerText='Please Wait...';" 
                    onclick="Button1_Click"  />
Run Code Online (Sandbox Code Playgroud)

这在IE中运行良好,但在Firefox中不行.

当我在Firefox中运行它时,标签在进程完成之前不会更改.

有没有办法在运行C#函数之前强制javascript更新页面?

Ann*_*lle 5

innerText属性是Internet Explorer的专有功能.在Firefox和其他DOM兼容的浏览器中,使用textContent(链接).

以下代码将测试以查看浏览器支持哪个属性并使用适当的属性:

var node = document.getElementById('errorMessage');
var errorMessage = 'Please Wait...';
if (typeof node.innerText !== 'undefined')
  node.innerText = errorMessage;
else
  node.textContent = errorMessage;
Run Code Online (Sandbox Code Playgroud)

如果您的网站涉及大量JavaScript,我强烈建议您使用第三方库(如jQuery)来处理这些浏览器不兼容问题.