Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/71.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 EJS-更改页面内容和URL_Javascript_Html_Ajax_Express_Ejs - Fatal编程技术网

Javascript EJS-更改页面内容和URL

Javascript EJS-更改页面内容和URL,javascript,html,ajax,express,ejs,Javascript,Html,Ajax,Express,Ejs,我希望当侧边栏中的链接被点击时,页面的内容发生变化,并且url应该在不重新加载侧边栏的情况下发生变化。 我已经能够实现在不重新加载侧边栏的情况下更改页面的主要内容,但我还需要更改url并使其特定于正在单击的侧边栏内容 我如何更改内容 HTML-单击欢迎或创建帐户时,它将调用changeContent()函数 <div class=" sidebar-item sidebar-menu"> <ul>

我希望当侧边栏中的链接被点击时,页面的内容发生变化,并且url应该在不重新加载侧边栏的情况下发生变化。 我已经能够实现在不重新加载侧边栏的情况下更改页面的主要内容,但我还需要更改url并使其特定于正在单击的侧边栏内容

我如何更改内容

HTML-单击欢迎或创建帐户时,它将调用
changeContent()
函数

 <div class=" sidebar-item sidebar-menu">
                    <ul>
                        <li class="header-menu">
                            <span>Get Started</span>
                        </li>
                        <li>
                            <a onclick="changeContent('/docs')"> <span id="welcome-btn" class="menu-text">Welcome</span> </a>
                        </li>
                        <li class="sidebar-dropdown">
                            <a> <span class="menu-text">Setting up</span> 
                            </a>
                            <div class="sidebar-submenu">
                                <ul>
                                    <li> <a id="creating-account" onclick="changeContent('/docs/settingUp')">
                                            Creating account</a> </li>
                                    <li> <a href="#">Starting transactions</a> </li>
                                    <li> <a href="#">Resolving transactions</a> </li>
                                    <li> <a href="#">Refund</a> </li>
                                </ul>
                            </div>
                        </li>
</div>
  <!-- page-content  -->
        <div class="main--c">
        <%- include ../partials/docs/welcomeDocs.ejs %>
        </div>
我的快速配置

router.get('/docs', (req: Request, res: Response) => {
    res.render('pages/docs');
})
router.get('/docs/settingUp', (req: Request, res: Response) => {
    res.render('partials/docs/settingUp');
})
这是可行的,它改变了内容,而无需重新加载整个页面,但当你点击创建帐户,我也想改变的网址。因此,每当有人在浏览器中输入url时,它都应该加载“创建帐户”页面


我尝试将
href=“docs/setingup”
添加到锚定标记,但它只加载部分页面,没有导航栏和其他样式设置

我发现一篇文章:该方法有效,但如果我转到
http://localhost:8080/docs/settingUpCraw
直接从我的浏览器中,它只加载部分文件,而不加载边栏。
router.get('/docs', (req: Request, res: Response) => {
    res.render('pages/docs');
})
router.get('/docs/settingUp', (req: Request, res: Response) => {
    res.render('partials/docs/settingUp');
})