Ajax 成功代码未以同步方式加载



我们期待以下几点: 希望显示具有更新值的页面。 然后显示会话属性。

下面的代码发生了什么,首先显示会话消息,然后重新加载页面。

$.ajax({
            type: "POST",
            url: "startSelectedServer", 
            data: { selectedJvmHostIp : selectedJvmHostIp, selectedJvmPort : selectedJvmPort },                
            success: function(result){
                1.   location.reload();
                2.   $("#save-message-div").show(); 
            },
            error : function(e) {
            }
        });
<div id="save-message-div" style="background-color: #DFF2BF; padding: 8px;display:none">
            <h2 id="save-message" style="color: #4F8A10"></h2>
        </div>

但是我们希望在重新加载页面后显示消息。

在上面 2 是先执行,然后 1 是执行。

好的,

在我看来,您正在尝试执行服务器端功能,然后刷新页面并显示一条消息,指出该功能已发生。

就目前而言,这很好,但不会像您那样工作。 要最接近您设想的方式,您需要在页面加载时放入条件逻辑,以确定是否适合显示div

即使您的页面在重新加载

之前没有显示div,它的编写方式,当页面重新加载时,它仍然不会执行相同的脚本 - 它是一个白板,只有你传递给它的内容。

我不确定你为什么要重新加载页面;你可以,而且应该[使用ajax],只使用从服务器异步返回的信息客户端。

最新更新