Thymeleaf 是一个用于服务器端 Java 模板引擎,它可以与 Spring 框架无缝集成,用于创建动态的 HTML 页面。要在新选项卡中打开带有参数的 URL,可以使用 HTML 的 <a>
标签,并结合 Thymeleaf 的表达式语法来设置 href
属性。
${...}
用于变量表达式。*{...}
用于对象属性的选择。#{...}
用于国际化消息。@{...}
用于生成 URL。假设你有一个控制器方法,它接受一个参数 id
并返回相应的视图:
@Controller
public class MyController {
@GetMapping("/item")
public String getItem(@RequestParam("id") Long id, Model model) {
// 根据 id 获取项目信息并将其添加到模型中
Item item = itemService.getItemById(id);
model.addAttribute("item", item);
return "item";
}
}
在 Thymeleaf 模板中,你可以这样创建一个在新选项卡中打开带有参数的 URL 的按钮:
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>Item Details</title>
</head>
<body>
<a th:href="@{/item(id=${item.id})}" target="_blank">View Item Details</a>
</body>
</html>
在这个例子中,th:href
属性使用了 Thymeleaf 的链接表达式 @{...}
来生成 URL,并且通过 ${item.id}
插入了动态的 id
参数。target="_blank"
属性确保了链接在新选项卡中打开。
如果你遇到了在新选项卡中打开链接时参数没有正确传递的问题,可以检查以下几点:
通过以上步骤,你应该能够解决在新选项卡中使用参数调用 URL 的问题。如果问题仍然存在,建议检查服务器日志以获取更多调试信息。
领取专属 10元无门槛券
手把手带您无忧上云