当我单击按钮时,我应该转到事件页面(是的,我的模板文件夹中有事件页面的模板)。为什么不加载?
下面是我的代码段。
AAA 125 XXX 321
BBB 467 YYY 568
发生了什么事,我应该去的页面正在这里加载: image
答案 0 :(得分:0)
您正在使用的Ajax请求实际上是将请求发布到该URL,而不是加载网页。如果您希望加载网页,请在JavaScript中使用window.location.href="/eventpage?eventName=" + eventName
。
答案 1 :(得分:0)
我相信您可能已经混淆了异步请求与同步请求,可以查看this post了解更多信息。您还应该使用GET请求来加载页面(不是POST)。 Post请求通常用于将表单数据发送到后端,而GET请求则用于获取数据(例如从API)或加载页面(除非它是Web应用程序)。
您可以按照Alex Davies建议使用Javascript(而不是Ajax)进行页面更改。您也可以将@RequestMapping更改为@GetMapping(“ / eventpage”)以在Spring中使用更直接的方法。
答案 2 :(得分:0)
基于屏幕截图(ibb.co/ZSXDBpG),帖子调用中缺少标头和令牌。
$('.events').on("click", function() {
var token = $("meta[name='_csrf']").attr("content");
var header = $("meta[name='_csrf_header']").attr("content");
var eventName = $(this).val();
$.ajax({
type: 'POST',
url : '/eventpage',
data : {'eventName' : eventName},
beforeSend: function(xhr) {
xhr.setRequestHeader(header, token);
},
success : function(data) {
console.log(data);
}
});
});
更改后,请检查您的控制台。还要检查“预览”和“响应”。希望这会有所帮助!