0

当我单击第一个链接时,pjax 会触发正确的内容。但是,当我选择第二个链接时,pjax 会像这样“http://localhost.com/name/test1/name/test2/”添加到已经选择的链接,然后返回到索引页面。我猜是因为添加了第二个链接。我该如何解决这个问题?

 <li><a data-pjax='#content' href="name/test1/"> test1 </a></li>
 <li><a data-pjax='#content' href="name/test2/">  test2</a></li>
 <li><a data-pjax='#content' href="name/test3/">  test3 </a></li>

 <script type="text/javascript">
$(document).ready(function(){
     $(function(){

  $('a[data-pjax]').pjax({container:'#content',timeout:15000});
   });

  });
  </script>
4

1 回答 1

1

可能是因为您在链接中使用了相对路径,请尝试将其更改为:

 <li><a data-pjax='#content' href="/name/test1/"> test1 </a></li>
 <li><a data-pjax='#content' href="/name/test2/">  test2</a></li>
 <li><a data-pjax='#content' href="/name/test3/">  test3 </a></li>

通过在属性/的开头添加。href

假设您从 开始/,当您单击第一个链接时,pjax 会将页面位置更改windows.location/name/test1/. name/test2/页面上的链接/name/test1/意味着/name/test1/+ name/test2/=> /name/test1/name/test2/,因为它是相对路径。

于 2013-08-14T00:17:21.817 回答