我目前在IE上禁用按钮时遇到问题。
问题应该很容易修复......我希望在功能运行时禁用按钮但由于某种原因在IE上按钮永远不会被禁用...我已尝试两个接近他们两个工作Chrome和FF,但我无法在IE上工作......
document.getElementById('printImage').setAttribute('disabled', true);
document.getElementById('printImage').disabled = true;
此外,如果我继续使用IE上的开发人员工具并手动设置禁用属性,它确实有效,所以我不知道发生了什么。
更新
好的,所以问题不在于设置属性....问题是基本上我这样做:首先我禁用按钮,然后我使用window.open打开一个新窗口,之后我做所以随机的东西,最后我做window.focus然后window.print(),最后我做window.close()一个我重新启用按钮但由于某种原因IE即使新打开的窗口是重新启用它仍然打开...这在Chrome中工作正常,因为它等待新窗口关闭再次启用按钮
感谢您提供的任何帮助!
答案 0 :(得分:1)
disabled
属性的正确值为disabled
。尝试:
document.getElementById('printImage').setAttribute('disabled', 'disabled');
撤消:
document.getElementById('printImage').removeAttribute('disabled');
答案 1 :(得分:-1)
也许像下面这样简单的方法就可以了。我的解决方案在IE中没有问题。您使用的是哪个版本的IE?
document.getElementById("printImage").disabled = true;
您还可以将上述解决方案更改为可重复使用的功能,甚至可以给它一个参数,以便您可以更改其中使用的ID:
function undisableBtn() {
document.getElementById("printImage").disabled = false;
}
function disableBtn() {
document.getElementById("printImage").disabled = true;
}
这是一个功能更精细的方法:
// bttnStatus: set to true to disable, and false to enable
function buttonStatus(bttnID,bttnStatus){
if(bttnStatus == true){
document.getElementById(bttnID).disabled = true;
} else {
document.getElementById(bttnID).disabled = false;
}
}
buttonStatus('printImage',true);