Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery成功后,重新加载页面,然后追加?_Javascript_Jquery_Ajax_Append - Fatal编程技术网

Javascript jQuery成功后,重新加载页面,然后追加?

Javascript jQuery成功后,重新加载页面,然后追加?,javascript,jquery,ajax,append,Javascript,Jquery,Ajax,Append,我有以下代码: $.ajax({ type: 'GET', url: 'edit_slides.php', data: { user_id: user_id }, success: function() { location.reload(); $('#messageContent').append('<p>success</p>'); }

我有以下代码:

$.ajax({
        type: 'GET',
        url: 'edit_slides.php',
        data: { user_id: user_id },
        success: function() { 
            location.reload(); 
            $('#messageContent').append('<p>success</p>'); 
        }
    });
$.ajax({
键入:“GET”,
url:“edit_slides.php”,
数据:{user\u id:user\u id},
成功:函数(){
location.reload();
$(“#messageContent”).append(“success

”); } });
现在发生的事情是,它附加然后很快重新加载,所以它会丢失消息

现在,我可以进行重新加载,它将附加,但为了使我的更改生效,需要重新加载页面

还有什么我能做的吗?我想在重新加载页面后显示一条成功消息

谢谢

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>
}
@if(请求[“消息”]=“成功”)
{
成功

}

如果没有可用的服务器端脚本,您也可以。

在重新加载页面之前,您可以有一些延迟。试试这个

$.ajax({
        type: 'GET',
        url: 'edit_slides.php',
        data: { user_id: user_id },
        success: function() { 
            $('#messageContent').append('<p>success</p>'); 
            setTimeout(function(){
               location.reload(); 
            }, 500);
        }
    });
$.ajax({
键入:“GET”,
url:“edit_slides.php”,
数据:{user\u id:user\u id},
成功:函数(){
$(“#messageContent”).append(“success

”); setTimeout(函数(){ 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>");
    }
$(文档).ready(函数(){
if(window.location.hash){
$(“#messageContent”)。追加(“success

”; }
500毫秒实际上不会给用户足够的时间来阅读消息。