jQuery成功后,重新加载页面,然后追加
jQuery on success, reload the page and then append?
我有以下代码:
$.ajax({
type: 'GET',
url: 'edit_slides.php',
data: { user_id: user_id },
success: function() {
location.reload();
$('#messageContent').append('<p>success</p>');
}
});
现在发生的情况是,它非常快速地进行追加,然后重新加载,从而丢失消息。
现在,我可以去掉重新加载,它会附加,但为了使我的更改生效,需要重新加载页面。
我还能做什么吗?我想在重新加载页面后显示一条成功消息。
谢谢!
location.reload()
将重新加载您的页面,这将向您的服务器创建一个新的请求,然后浏览器加载响应。您可以在消息的查询字符串中添加一个参数,例如
$.ajax({
type: 'GET',
url: 'edit_slides.php',
data: { user_id: user_id },
success: function() {
window.location = "?message=success";
}
});
然后在服务器端代码中,如果参数存在,则可以显示消息。在ASP.NET MVC中,它看起来是这样的:
@if(Request["message"] == "success")
{
<p>success</p>
}
如果您没有可用的服务器端脚本,您也可以使用javascript解析查询字符串。
在重新加载页面之前可能会有一些延迟。试试这个
$.ajax({
type: 'GET',
url: 'edit_slides.php',
data: { user_id: user_id },
success: function() {
$('#messageContent').append('<p>success</p>');
setTimeout(function(){
location.reload();
}, 500);
}
});
将其发送到一个位置,但url中有一个哈希来表示成功:
$.ajax({
type: 'GET',
url: 'edit_slides.php',
data: { user_id: user_id },
success: function() {
window.location = window.location + "#success";
}
});
现在,当页面加载时,检查哈希:
$(document).ready(function(){
if(window.location.hash) {
$("#messageContent").append("<p>success</p>");
}
相关文章:
- AngularJS加载JSON数据,然后从中解析/加载HTML
- 先在Angular中加载配置文件,然后再加载其他文件
- 加载文件,然后调用回调函数
- 如何更改javascript的一个变量,然后运行;“加载”;而无需重新加载页面
- 下拉重新加载页面,然后检索值
- 先加载特定的图像,然后再加载页面的其余部分
- 加载页面,然后在页面加载时执行 javascript
- Angular js,在选择元素上,我想 POST 数据以将其保存在数据库中,然后我想使用 PUT 更新它而无需重新加载
- 使用 jQuery 加载 JSON,然后将其显示给查看器
- 淡出加载然后淡入不起作用
- 可以进行现场重新加载,然后触发点击功能
- 在RadWindow中加载新页面,然后从加载的窗体中关闭窗口
- 加载在JSBN中创建的RSA公钥,然后加密消息
- 加载时可以单击按钮#1,然后需要单击按钮#2两次.按钮#1也需要点击两次
- 地图,rails 4.2,javascript,鼠标悬停,只工作一次(或两次).然后在重新加载之后
- 如何在jQuery中进行页面加载,然后点击
- removeChild,然后再次添加以前删除的Child以重新加载并清理它
- jQuery UI#Accordion加载然后fadeIN..怎样
- 中间的页脚加载然后粘在底部
- 加载然后换行,但是换行在jQuery中不起作用