2012-10-03 47 views
0

當我點擊第一個鏈接時,pjax會觸發正確的內容。但是,當我選擇第二個鏈接時,pjax添加到像這樣的「http://localhost.com/name/test1/name/test2/」的選擇鏈接,然後返回到索引頁面。我猜是因爲增加了第二個鏈接。我該如何解決這個問題?pjax在選擇鏈接時添加URL

<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

我解決了這個問題,我在這個「href =」/ name/test1「之前的所有」href「前添加了一個正斜槓」/「,由於某些原因導致它沒有它的相同url的配音。 –

回答

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/test1/name/test2/的鏈接表示/name/test1/ + name/test2/ =>/name/test1/name/test2/,因爲它是相對路徑。