如何禁用s:动态选择

时间:2012-08-21 12:39:56

标签: javascript struts2

当我尝试动态禁用时,它没有被禁用..

document.getElementById('selectId').disabled=true

2 个答案:

答案 0 :(得分:3)

document.getElementById('selectId').disabled=true.应该是:
document.getElementById('selectId').disabled=true;


由于我的第一个回答中的错误,一些额外的信息:

disabled属性可以接受任何值 只要存在此属性,该元素将被禁用,无论其值如何。

<input type="text" value="This is disabled" disabled>
<input type="text" value="This is disabled" disabled="disabled">
<input type="text" value="This is disabled" disabled="true">
<input type="text" value="This is disabled" disabled="false">

<input type="text" value="This is not disabled">

虽然在脚本编写方面,但它有所不同。

document.formname.elementname.disabled = true; //disabled
document.formname.elementname.disabled = false; //enabled

这些属性也是如此:
选中(单选按钮和复选框)
选中(选项)
nowrap(td)

答案 1 :(得分:0)

正如this documentation中针对struts所述,select元素的“disabled”属性的类型为“String”,我至少会尝试放入.disable =“disabled;”在你的代码中,看看它是否有效。

我发现Struts vs. HTML问题的另一个解决方案是here。解决方案是在元素标记中使用属性theme='simple'(在这种情况下,您的标记或其中一个容器)。这让HTML在Struts上执行其功能,试图在显示时执行其功能。我建议这个答案,因为你可能有一个幕后问题,Struts不喜欢你试图使用的HTML“禁用”属性,并且它没有正常启动。所以尝试添加theme ='simple'(或其他一些主题),看看是否有任何变化。