在 Grails 的 gsp 中执行 jquery 代码

Executing jquery code in gsp in Grails

我想在选中复选框时以 gsp 代码显示一些输入字段。我为此使用 jquery。 我将 jquery 脚本连接到 gsp,如下所示:

<g:javascript library="jquery" />
<script type="text/javascript">($('.isAdminCafee').click(function() {
  $('.adminFields')[this.checked ? "show" : "hide"]();
  });)
</script>

这是我的 gsp 代码的一部分,与此代码 jquery-脚本必须交互:

<div class="checkbox">
  <label><g:checkBox name="isAdminCafee" value="${false}"/>
    Register as admin
  </label>
</div>
<div class="adminFields">
  hello)
</div>

但是互动没有发生。如何解决?

您的复选框名称设置为 isAdminCafee,而不是 class。您的 jQuery 选择器 .isAdminCafee 按 class 搜索,因此不匹配任何内容。

$(".adminFields").hide();
$('.checkbox input:checkbox').click(function() {
    var $this = $(this);
    if ($this.is(':checked')) {
        $(".adminFields").show();
    } else {
        $(".adminFields").hide();
    }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<div class="checkbox">
   <label><input type="checkbox" name="isAdminCafee" value="false">Register as admin</label>
</div>
<div class="adminFields">
  hello)
</div>