猿问

如何在不刷新整个页面的情况下更改 URL

我一直在 stackOverFlow 等上搜索,看看是否可以在不刷新整个页面的情况下更改 URL 我找到了一些答案,但它们并没有真正帮助。

无论如何,所以我想<div>在 URL 为someURL.com/?c=users&a=login. 你知道它会加载我写的函数。

例如看下面的代码:


<?php

    require_once 'model/Muser.php';

    $class = new user();

    switch ($action){

        case 'login':

            if($_POST){

                $data=$_POST['frm'];

                $password=sha1($data['password']);

                $user=$class->select_user($data['username']);

                if($user['password']==$password){


                }

            }

        break;

        case 'logout':


        break;


    }


    require_once "view/$controller/$action.php";


所以当我输入someURL.com/?c=users&a=login它时会加载 view/users/login.php页面,但我只想更改<div>的内容。我已经想通了这一点使用jQuery,但我想,当用户键入someURL.com/?c=users&a=login的<div>内容变化,或者当一些按钮,点击该URL和<div>的内容变化。

任何解决方案?


智慧大石
浏览 139回答 2
2回答

翻过高山走不出你

你能不能在一些我们的页面中定义一个DIV,例如index.html,然后使用Ajax 将结果放入DIV。没有jQuery的解决方案:const Http = new XMLHttpRequest();const url='YOU_URL?param1=data1&param2=data2';Http.open("GET", url);Http.send();Http.onreadystatechange=(e)=>{&nbsp; &nbsp; if (this.readyState == 4 && this.status == 200) {&nbsp; &nbsp; &nbsp; &nbsp; var htmlRequest = this.responseText;&nbsp; &nbsp; &nbsp; &nbsp; document.getElementById("DIV").innerHTML = htmlRequest;&nbsp; &nbsp; }}
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答