如何更换网站的一部分,而无需重新加载整个网站?

时间:2017-05-02 10:58:41

标签: javascript jquery ajax visual-studio-2017

以下是相关代码:

<body>
    <h1>Music Nation</h1>
    <div id="navBar">
        <ul>
            <li>
                <a href="Welcome.html">Home</a>
            </li>
            <li>
                <a href="Trance.html" id="tranceGen">Trance</a>
                <ul>
                    <li>
                        <a href="MS.html"  id="artistMS">Markus Schulz</a>
                    </li>
                </ul>
           </li>
       </ul>
     </div>
     <div id="pjax-container">
             some text that should be replaced...
     </div>
<script>
        $(document).ready(function () {
            $("#tranceGen").click(function () {

                e.preventDefault();
                $("#pjax-container").load("Trance.html #pjax-container");

            });
        });
</script>
</body>

就我在互联网上阅读而言,通过使用它,它应该只替换页面的某个部分而不重新加载整个页面,但由于某种原因它不起作用。它仍然会加载整个页面。

我已经阅读了如何使用它:http://api.jquery.com/load/ 我还阅读了一些教程,并且我已经在这里阅读了有关同一主题的其他问题,但我尝试的任何内容似乎都没有。

我还尝试过另一个我在其他教程中读过的内容,删除默认操作(加载我点击的页面,我假设),添加&#34; e.preventDefault();& #34;,但这也没有效果。

我做错了什么? 我想加载&#34; #pjax-container&#34;的内容。在&#34; Trance.html&#34;当前页面的页面&#34;#pjax-container&#34;无需重新加载整个页面。 我在Windows 7上使用Visual Studio 2017,如果它在某种程度上相关。

此外,在&#34; head&#34;第一节:

<script type="text/javascript" src="Scripts/jquery.pjax.js"></script>
<script src="Scripts/jquery-1.9.1.js"></script>

1 个答案:

答案 0 :(得分:0)

  <div id="#pjax-container">
             some text that should be replaced...
     </div>

用pjax-container

替换id
  <div id="pjax-container">
             some text that should be replaced...
     </div>