pjax在选择链接时添加URL

时间:2012-10-03 22:50:02

标签: pjax

当我点击第一个链接时,pjax会使用正确的内容触发。但是,当我选择第二个链接时,pjax会添加到alread选择链接,如“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>

1 个答案:

答案 0 :(得分: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/ =&gt; /name/test1/name/test2/,因为它是一条相对路径。