我是Thymeleaf的新手,与Springboot一起使用。我正在尝试做一个非常简单的事情:我有一个url,并且我想编辑文本而不编辑url链接。
这有效(它向我显示了网址作为URL,实际上我可以单击它:]]
<a th:text="${c.getWebsite()}" th:href="${c.getWebsite()}"> Website </a>
这也有效(按钮称为“视图”,但超链接有效:]
<a th:href="@{'/company/' + ${c.getId()}}" class="btn btn-primary"> <i class="fas fa-building"></i> View </a>
我想在按钮上写的不是视图,而是公司的名称。由于某种原因,这不起作用:
<a th:text="${c.getName()}" th:href="@{|/company/${c.getId()}|}">Name</a>
[当我检查元素时,我看到了:
<a href="/company/123456">Test Company</a>
所以这似乎是正确的,但它不允许我单击它。我尝试了许多不同的组合,并且还阅读了有关url syntax的百里香叶文档,但到目前为止还没有运气。有人可以帮忙吗?谢谢!
注意:这是表格的一部分……“公司名称”(我想变成网址)在表格的第3列中,那么网站就更远了;最后,按钮“视图”位于最后一列。按钮视图有效,当我将该按钮的代码复制到第三列而不进行任何更改时,它将停止工作(它仅显示按钮,但是没有url在工作,即使我检查元素时,该url也是如此那里)。非常奇怪,我在chrome和edge上都看到了。
我不太确定,但是发现正常链接标记和非正常链接标记在href属性中存在差异,这可能会导致问题:工作的链接有单撇号,而另一个有管道...
th:href="@{'/company/' + ${c.getId()}}"
th:href="@{|/company/${c.getId()}|}"
这能解决您的问题吗?