我经常看到带有搜索功能的网站,当他们搜索某些内容时,网页通常会将网址更改为类似于
search.php?q =“ searchquery”&等等,我在我的网站上有一个搜索页面,并且我使用ajax提交具有搜索输入的表单,并将其发送到php页面,该页面搜索我的数据库并将数据返回到特定页面通过回显在原始页面上的div。

function getdata() {
   var str = document.getElementById("searcb");
   document.getElementById("demo").innerHTML = "You are searching for: " + str.value;
   document.getElementById("searchresults").style.display="block";

 if (str == "") {
       document.getElementById("demo").innerHTML = "";
       return;
         }
else {

      var xmlhttp = new XMLHttpRequest();
      xmlhttp.onreadystatechange = function() {
        if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                document.getElementById("searchresults").innerHTML = xmlhttp.responseText;
            }
        }

    xmlhttp.open("GET", "getuser.php?q=" + str.value, true);
    xmlhttp.send();
    return false;
    }
}


的HTML

   <form  onsubmit="return getdata()">
   <input type="search" id="searcb" name="searchBar"></br></br>
   </form>


我的问题是,与普通搜索引擎相比,我在做哪些不同的操作,导致我的网址保持不变

最佳答案

通常,URL会更改,因为执行了重新加载页面的发布。您的URL不会更改,因为您进行的ajax调用不会重新加载当前页面。

关于javascript - 是什么导致URL在表单提交时发生更改,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37496273/

10-12 14:03
查看更多