javascript以禁用复选框

问题描述 投票:0回答:1

我是UI技术的新手。解决以下问题的任何线索都会有很大帮助。

以下是我的jsp页面的代码

<label for="enableLogging"><s:text name="log.enable"/></label>
  <s:checkbox id="enableLogging" name="enableLogging" value="enableLogging" disabled="%{!user.system}"/>
  <div class=title><s:text name="sys.events"/></div>
    <label for="level"><s:text name="level"/> <s:select id="level" name="level" value="level" disabled="${disabled}"/></label>
    <label for="message"><s:text name="message"/> <s:select id="message" name="message" value="message" disabled="${disabled}"/></label>
    <label for="addSeverity"><s:text name="add.severity"/></label>
    <s:checkbox id="addSeverity" name="addSeverity" value="addSeverity" disabled="${disabled}"/>

...以下是我基于enableLogging的值添加的用于禁用文本框和复选框的javascript

    <script type="text/javascript">
  $(function() {

    var $enableLogging = $('#enableLogging');
    var $level = $('#level');
    var $message = $('#message');
    var $addSeverity = $('#addSeverity')

    if (!$enableLogging.prop('checked')) {
      $level.attr('disabled', true);
      $message.attr('disabled', true);
      $addSeverity.attr('disabled', true);
    }

    $enableLogging.change(function() {
      $this = $(this);
      if ($this.prop('checked')) {
        $level.attr('disabled', false);
        $message.attr('disabled', false);
        $addSeverity.attr('disabled', false);
      } else {
        $level.attr('disabled', true);
        $message.attr('disabled', true);
        $addSeverity.attr('disabled', true);
      }
    });
  });
</script>

我想根据“ enableLogging”复选框的值来禁用“级别”,“消息”和“ addSeverity”,但以上代码似乎无法正常工作

javascript jsp struts
1个回答
0
投票

您可以尝试

© www.soinside.com 2019 - 2024. All rights reserved.