jQuery 加载新视图,然后加载局部视图
jQuery to load new view and then load partial view
我有一个 asp.net MVC 视图。单击此视图上的按钮应将用户重定向到另一个视图。第二个视图是用很少的部分视图构建的。其中一个局部视图需要很长时间才能加载,所以我不希望页面加载有这种开销,我希望局部视图在 ajax 调用时变为 运行,这样它就可以 运行 异步。但是在重定向时,我想 return 第二个视图与其他局部视图。
请为此提出解决方法。
$(document).on('click', '#buttonClick', function () {
window.location = '/some/someAction?id=123';
$.ajax ({
type: 'GET',
url: '/some/LoadPartialView?id=123',
success: function(data){
$('#timeTakingPartialView').html(data);
}
});
});
Window.location 在 ajax 调用后重定向到第二个视图。所以重新加载正在跨过 ajax 调用。
如果我没理解错的话,你想在调用主视图之前加载那个局部视图。我不认为这是可能的。我建议在第二个视图上添加此部分视图 "lazy" 加载。所以对于第一个视图你只需要添加按钮点击事件:
$(document).on('click', '#buttonClick', function () {
window.location = '/some/someAction?id=123';
});
并且当您定位到第二个视图 (someAction) 时,您可以在加载 DOM 时加载就绪事件:
$(document).ready(function () {
$.ajax ({
type: 'GET',
url: '/some/LoadPartialView?id=123',
success: function(data){
$('#timeTakingPartialView').html(data);
}
});
});
所以,加载缓慢的局部视图将被分离。
我有一个 asp.net MVC 视图。单击此视图上的按钮应将用户重定向到另一个视图。第二个视图是用很少的部分视图构建的。其中一个局部视图需要很长时间才能加载,所以我不希望页面加载有这种开销,我希望局部视图在 ajax 调用时变为 运行,这样它就可以 运行 异步。但是在重定向时,我想 return 第二个视图与其他局部视图。 请为此提出解决方法。
$(document).on('click', '#buttonClick', function () {
window.location = '/some/someAction?id=123';
$.ajax ({
type: 'GET',
url: '/some/LoadPartialView?id=123',
success: function(data){
$('#timeTakingPartialView').html(data);
}
});
});
Window.location 在 ajax 调用后重定向到第二个视图。所以重新加载正在跨过 ajax 调用。
如果我没理解错的话,你想在调用主视图之前加载那个局部视图。我不认为这是可能的。我建议在第二个视图上添加此部分视图 "lazy" 加载。所以对于第一个视图你只需要添加按钮点击事件:
$(document).on('click', '#buttonClick', function () {
window.location = '/some/someAction?id=123';
});
并且当您定位到第二个视图 (someAction) 时,您可以在加载 DOM 时加载就绪事件:
$(document).ready(function () {
$.ajax ({
type: 'GET',
url: '/some/LoadPartialView?id=123',
success: function(data){
$('#timeTakingPartialView').html(data);
}
});
});
所以,加载缓慢的局部视图将被分离。