首页 > 解决方案 > 当我的javascript修改html并显示AJAX结果时,如何在新页面中显示结果?

问题描述

当我单击按钮时,页面由 javascript 修改,但我无法返回初始页面,因为修改后的结果在同一页面上。我希望浏览器将 javascript 修改的页面视为新页面,以便我可以返回初始页面。

<button onclick="showUser();">THANKS </button>

    function showUser() {
       var xhttp = new XMLHttpRequest();
        xhttp.onreadystatechange = function() {
            if (this.readyState == 4 && this.status == 200) {

             fnc(this);
             var p=JSON.parse(this.responseText);


             }

             var para= document.createElement("p");
              para.setAttribute("id","dynamicpara")  ;
             para.innerHTML=p[1].name;
             var element=document.getElementById("STAR");
             element.appendChild(para);



          }
        };
        xhttp.open("GET", "getuse.php", true);
        xhttp.send(); 
    }

标签: javascripthtmlajax

解决方案


好的,你想简单地回去。我在你的 JavaScript 中找到了这段代码

 function myDivert(){
     window.location.href="https://tickety-boo-scratch.000webhostapp.com/index1.html";
 }

这是重定向你到index1.html页面。您可以将其更改为

 function myDivert(){
     window.location.href="https://tickety-boo-scratch.000webhostapp.com";
 }

返回原始页面。请注意,index.htmlindex1.html是完全不同的页面。

看来您想在点击后保留中间页面并显示更多内容。在这种情况下,您可以简单地将内容附加到中间页面的某个 div 中。

编辑

我不能完全按照你的意愿去做,但我给你这个想法。在您的方式中,状态更改不会由 URL 表示。你想做一些叫做深度链接的事情。

您可以这样做,window.location.hash但您需要相应地更改 URL,以便用户可以使用后退或前进按钮来回移动,并且用户仍然可以看到修改的 ajax(如您所说)。

但要完成此操作,您需要一个检查哈希的计时器。

这与用于深度链接的选项卡式界面相同,您可以使用它来实现您想要做的事情。


推荐阅读