禁用Struts 1

时间:2016-12-01 20:16:54

标签: javascript html jsp struts

我有一个是或否的单选按钮,我想根据booleanProperty的值禁用或启用它。

如果booleanProperty的值为“Y”,则logic:equal会将我带到我要禁用“是”或“否”单选按钮的代码。

如果BooleanProperty为“N”,那么逻辑:相等会将我带到我不禁用“是”或“否”单选按钮的代码。

struts <html:radio>中没有禁用属性可以帮助我完成功能。我上面的伪代码也在上面描述过。

              <logic:equal name="myForm" property="booleanProperty" value="Y">
                   <td class="Label"><bean:message key="Label.hs"  bundle="Messages" /></td>
                  <td>Yes: <html:radio property="hs" value="Y"
                      styleClass="Radio" **disable = "true"** /> No: <html:radio property="hs"
                      value="N" styleClass="Radio" **disable = "true"**/></td>  
               </logic:equal>

               <logic:equal name="myForm" property="booleanProperty" value="N">
                   <td class="Label"><bean:message key="Label.hs"  bundle="Messages" /></td>
                  <td>Yes: <html:radio property="hs" value="Y"
                      styleClass="Radio"   /> No: <html:radio property="hs"
                      value="N" styleClass="Radio" /></td>  
               </logic:equal>

解决方案: -

基本上我想保留我从Action类中收到的booleanProperty的值。我们的想法是根据booleanPrpoerty的值停用单选按钮。我删除了Logic:equal标记为Logic:equal在服务器端编译并决定在编译时显示什么。我想要一些在运行时决定的东西,与java脚本有关。

所以我将上面的单选按钮HTML更改为

Yes: <html:radio property="booleanRadio" value="Y" styleClass="Radio" /> 
No: <html:radio property="booleanRadio"  value="N" styleClass="Radio" />

我创建了一个隐藏属性字段,如下所示。

<html:hidden property="booleanProperty" /> 

并编写了一个像这样的java脚本

frm = document.mainForm
   function booleanPropertyValue()
          {
          if(frm.booleanProperty.value == 'Y')
          {
          radioGroupDisabled(frm.booleanRadio, true);
          }
          else
          {
          radioGroupDisabled(frm.booleanRadio, false);
          }
          }

0 个答案:

没有答案