我一直在尝试从与该控制器无关的jsp页面调用不同的控制器。 我正在尝试做的事情:jsp从控制器A加载,在页面加载后我想调用控制器B而不改变页面位置。
我尝试过很多东西,但还没有成功。
Ajax尝试:
$(window).load(function () {
var url = $('#analyticLog').attr('href');
$.ajax({
type: "POST",
url: url,
success: function(html)
{
$("#analyticLogAjax").replaceWith($("#analyticLogAjax",$(html)));
},
error: function (xhr, ajaxOptions, thrownError) {
alert(xhr.status);
alert(thrownError);
}
});
});
window.location尝试:
$(window).load(function () {
window.location = $('#analyticLog').attr('href');
});
每个引用的锚都指向控制器映射到的动作。我还使用了处理我们的动作请求和映射的视图控制器,希望能够使空视图不引用新的“视图”。但是接下来我的500支票就是通过了那个观点。
我知道这到处都是。但是,如果我能找到一种方法来调用我的课程而不改变视图,那将是非常有益的。
答案 0 :(得分:1)
只需将loc设置为控制器的URL
即可$(window).load(function () {
var url = $('#analyticLog').attr('href');
loc = /* the URL of the controller you wish to post to */;
$.ajax({
type: "POST",
url: loc,
success: function(html)
{
$("#analyticLogAjax").replaceWith($("#analyticLogAjax",$(html)));
},
error: function (xhr, ajaxOptions, thrownError) {
alert(xhr.status);
alert(thrownError);
}
});
});
注意:,除非控制器特别期望post
您应该使用get