【发布时间】:2016-08-03 11:14:59
【问题描述】:
我正在使用以下代码更改按钮元素中的功能。
html:
<input id="btnCall" type="button" value="Next Call" onclick="Call();"/>
最初 btnCall 将运行 Call() 函数。在某些情况下,我将使用以下代码更改 btnCall 中的函数。 js:
document.getElementById("btnCall").onclick = function() {txCall();};
ChgText("btnCall", "Transfer Call");
我在windows 7中使用ie11,上面的javascript函数有时可以工作有时不能工作。有人知道为什么吗?或者有没有更好的方法来改变一个可以在 ie 中工作的按钮 onclick 功能?
【问题讨论】:
-
更好的方法是不使用内联 html
onclick属性,而只根据需要使用document.getElementById("btnCall").onclick = Call或document.getElementById("btnCall").onclick = txCall。或者将 onclick 绑定到第三个函数,该函数有一些逻辑来决定是调用Call()还是txCall()。 (顺便问一下,您提到的 IE 是否意味着它可以在其他浏览器中运行?) -
您确定正在执行更改 btnCall 功能的代码,并且它是在定义元素后执行的吗?
-
Jaromanda X,是的,它是执行。因为 ChgText 函数运行了,我可以看到按钮标签更改为“Transfer Call”。
-
nnnnn,我还没有尝试过其他浏览器...因为它需要很长时间来测试它。我尝试运行它大约 100 次,也许大约 80 次可以工作。其他 20 次无法工作。
标签: javascript jquery html internet-explorer