1

我正在使用 Lombardi Teamworks BPM Tool 开发解决方案。该工具本身会生成客户端源代码,但我可以使用 JavaScript 输入代码,例如为组合框添加 onChange 代码。

无论如何,我有一个按钮,我正在尝试使用 JavaScript 切换其可见性。我可以使用 隐藏按钮hidden,但无法使用 取消隐藏隐藏按钮visible

这是完整的代码:

var eleBtnVisibilityTest = document.getElementById("btnVisibilityTest");
if (eleBtnVisibilityTest== null) {
            eleBtnVisibilityTest = document.getElementsByName("btnVisibilityTest");
}

alert("-->"+eleBtnVisibilityTest.style.visibility+"<--");

eleBtnVisibilityTest.style.visibility = "visible";

alert("-->"+eleBtnVisibilityTest.style.visibility+"<--");

在倒数第二行中,我将按钮设置为visible,但它不起作用......但是,如果该按钮以前可见,并且我在hidden这里写过,它会起作用的。

对于这两种情况,在设置可见性之前的警报中,我得到的弹出窗口说--><--.. 在设置可见性之后的弹出窗口中,它要么是-->visible<--要么-->hidden<--..

有任何想法吗 ?

4

3 回答 3

0

document.getElementsByName返回一个 NodeList,您必须从该列表中选择一个项目:

var eleBtnVisibilityTest = document.getElementById("btnVisibilityTest");
if (eleBtnVisibilityTest== null) {
            eleBtnVisibilityTest = document.getElementsByName("btnVisibilityTest")[0];
}

但是,当设置隐藏作品的可见性时,这实际上不是这里的问题。

您应该提供更多详细信息,因为您的代码在与 getElementById
http://jsfiddle.net/doktormolle/4mhBk/一起使用时有效

于 2012-09-03T12:30:56.230 回答
0

尝试使用 CSS 显示属性:

display: block;
display:none;
于 2012-09-03T11:58:50.773 回答
0

不确定“但它不起作用”是什么意思 - 你的意思是按钮保持不可见吗?

可能是按钮通过 CSSvisibility属性以外的其他方式隐藏。也许它也有display: none?在这种情况下,设置visibility属性不会使按钮变得可见。使用 Chrome 的检查器之类的工具来检查是否是这种情况。

在 JSFiddle 上发布代码片段,以便我们可以看到代码在运行中。

于 2012-09-03T12:51:35.760 回答