[英]How do i reload same page using window.location in jQuery?
我有一个jQuery函数
(function ($) {
jQuery.fn.saveUser = function(destinationUrl) {
this.click(function() {
var formData = 'option=saveuser&'+$('form#save-user').serialize();
$.ajax({
type: 'POST',
url: 'process.php',
data: formData,
success: function(msg){
if(msg === 'empty') {
alert('Required Values Missing');
} else if(msg === 'duplicateEmail'){
alert('Email already exist');
} else {
window.location = destinationUrl;
}
}
});
});
}
现在基于一些操作和事件,我将其重定向到不同的页面,在这种情况下,我需要将其重定向到两个不同的URL。
1) reload the same page preserving all $_GET variables via URI
2) reload to the specified url.
下面的jQuery代码可以将我重定向到任何特定的网址。
$('form#save-user button[name="save-user-close"]').saveUser(function() {
return 'index.php?users';
});
但是我没有得到例如如何使其重定向到同一页面。
$('form#save-user button[name="save-user-close"]').saveUser(function() {
return location.reload(true);
});
我知道上面的代码将无法正常工作,我对此感到困惑?
您永远不会在代码中调用该函数,因此无论您在函数中放入什么内容,该函数都不会起作用。 插入:
window.location = destinationUrl;
您应该调用该函数,然后让该函数进行重定向:
destinationUrl();
(您可能想重命名该参数以反映用法的更改。)
因此,您的函数应该执行重定向而不是返回URL,以便可以在第二个方法中使用reload
方法:
$('form#save-user button[name="save-user-close"]').saveUser(function() {
window.location = 'index.php?users';
});
和:
$('form#save-user button[name="save-user-close"]').saveUser(function(e) {
location.reload(true);
});
window.location.href=window.location.href;
要么
location.replace(URL);
但是保留变量,您可以使用查询字符串或会话变量
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.