微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 Struts2 中制作互斥复选框?

如何解决如何在 Struts2 中制作互斥复选框?

我有一个变量paramMap,类型是HashMap<String,String>,它有两个元素:

{"1","areaNo"}
{"2","areaOrgNo"}

以及Struts2的复选框代码如下:

<s:iterator value="paramMap" var="params" status="paramStatus">
  <input type="checkBox" name="params" key_id="#paramStatus.index" value="<s:property value="#param.key"/>"
  <s:if test="#paramStatus.index=0">
    onclick=checkAreaNo()
  </s:if>

我想要的逻辑是,当我选中 areaNo 时,areaOrgNo 将被取消选中,我应该如何在 checkAreaNo() 中编写函数 <script></script>?我写了 checkAreaNo() 如下,但它不起作用:

<script>
  function checkAreaNo() {
    if ( $(input[key_id='1']).prop("checked") ) {
      $(input[key_id='1']).prop("checked",false)
    }
  }
</script>

解决方法

我不知道您的地图中有哪些元素,但在纯 HTML 中,元素是 DOM,并且您不能对它们使用 OGNL 语法。有关详细信息,请参阅 this 答案。

因此,正如我在对纯 html 标记使用 OGNL 的评论答案中所说,您应该使用 <s:property> tag 或 JSP EL。

<input type="checkbox" name="params" key_id="<s:property value='#paramStatus.index'/>" value="<s:property value='#params.key'/>" label="<s:property value='#params.value'/>">

<input type="checkbox" name="params" key_id="${paramStatus.index}" value="${params.key}" label="${params.value}">

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。