在Thymeleaf里面加载JavaScript函数?

时间:2017-09-28 04:50:23

标签: javascript jquery html thymeleaf

我想在Thymeleaf和HTML代码中调用Java Script函数

<a class='btn btn-default btn-xs' href='#' role='button' th:id="view-notification">
  View Notification
</a>
<a href="index.php?cat=notifications">
  Notifications
  <span class="badge" th:id="notification-badge">1</span>
</a>

这是我的Java脚本功能,我已经在我的html文件中正确包含(我希望如此)

<th:block th:fragment="scripts">
  <script th:inline="javascript">
    $('#view-notification').click(function () {
      $('#notification-badge').hide();
    });
  </script>

我检查了html页面,发现js没有加载。我的代码出了什么问题?

1 个答案:

答案 0 :(得分:1)

脚本代码是否位于html内的按钮下方?否则脚本无法注册侦听器。我猜它是脚本运行的时间,按钮还没有。 您可以尝试将脚本包装在ready函数中。

$(document).ready(function() {
   $('#view-notification').click(function () {
       $('#notification-badge').hide();
   });
});

另一个解决方案是在窗口上设置监听器并监听ID的点击。这甚至可以让你稍后修改代码并使用ajax调用渲染按钮。