Javascript thymileaf:将输入文本作为参数传递到href
我有一个Javascript thymileaf:将输入文本作为参数传递到href,javascript,html,spring,templates,thymeleaf,Javascript,Html,Spring,Templates,Thymeleaf,我有一个输入字段,其值由控制器通过响应设置。查询,在模板中我还有两个链接,它们执行读取和删除调用在查询中输入的id。这是模板 <div class="input-group"> <input type="text" th:value="*{response.query}" /> <div class="input-group-btn"> <ul class="dropdown-menu dropdo
输入
字段,其值由控制器通过响应设置。查询
,在模板中我还有两个链接,它们执行读取
和删除
调用在查询
中输入的id
。这是模板
<div class="input-group">
<input type="text" th:value="*{response.query}" />
<div class="input-group-btn">
<ul class="dropdown-menu dropdown-menu-right">
<li><a href="#" th:href="@{/read/{id}(id=response.query)}">Read</a></li>
<li><a href="#" th:href="@{/delete/{id}(id=response.query)">Delete</a></li>
</ul>
</div>
</div>
不幸的是,
href
参数总是作为null
传递。有其他方法吗?您无法获得响应。查询,因为它位于客户端,然后您可以调用它。在您的情况下,您需要javascript,它将构造您链接的URL(或者,您需要一个表单来提交输入值):
/**/
好吧,让我看看我是否明白您想要什么:
例如,在文本输入中输入“5”。现在,您要执行以下操作:
http://localhost:8080/read/5
你有一个控制器,看起来像这样:
@RequestMapping(value="/read/{id}", method=RequestMethod.GET)
public String read(@PathVariable String id, Model model) {
// your logic goes here
return "read";
}
首先,我的建议是,您可以从以下位置更改代码:
<li><a href="#" th:href="@{/read/{id}(id=response.query)}">Read</a></li>
致:
是的,这是正确的,我有一个类似的控制器,我只需要一个绑定到一个字段的输入文本字段,两个href,一个要读取,一个要删除,在这两种情况下都使用字段值作为参数。它起到了作用:用th:href=“@{/read/{id}(id=response.query)}
替换以下th:href=“@{/read/{id}(id=${response.query})}“
这是答案!非常有用
<li><a href="#" th:href="@{/read/{id}(id=response.query)}">Read</a></li>
<li><a href="#" th:href="@{/read/{id}(id=${response.query})}">Read</a></li>