根据javascript中的值创建th:href

时间:2018-02-21 16:58:41

标签: javascript jquery twitter-bootstrap spring-mvc

我在弹簧控制器中使用这种按钮重定向,效果很好:

<a class="btn btn-info" role="button" th:href="@{/grid/year/2017/month/12}"> 
  <span th:text="#{grid}"></span> 
</a> 

我需要根据javascript函数中选择的值更改yearmonth的值,如下所示:

$('#year').on('change', function() { 
  var year = $(this).find('option:selected').val(); 
  var selectedYear= $(this).val(); 
}); 

例如,如果所选year2016我想创建th:href="@{/grid/year/2016/month/12},那么我可以使用此值重定向到我的控制器。

这可能,还是有其他选择?感谢。

更新1:

如果我添加 id

<a class="btn btn-info" id="add" role="button" th:href="@{/grid/year/2017/month/12}"> 
      <span th:text="#{grid}"></span> 
</a> 

alert($('#add').attr('role')); 

我获得了价值:按钮,但不是 th:href ,也许&#34;:&#34;是问题.....

1 个答案:

答案 0 :(得分:0)

您可以使用jquery在th:href属性中更改年份,如下所示:

    $('#year').on('change', function() { 
         var year = $(this).find('option:selected').val(); 
         var selectedYear= $(this).val(); 

         var str = $('a').attr('th:href');
         var arr = str.split('/');
         arr[3] = selectedYear;
         newVal = arr.join('/');
         $('a').attr('th:href',newVal);
    }); 

使用上面的代码,href将更改为“@ {/ grid / year / 2016 / month / 12}”