2017-07-28 72 views
1

我有一個標籤,我訪問它們「新聞#p1,新聞#p2,新聞#p3」。但是當我今天分頁時,我的網址就像這樣「http://local.test.com/home/news#p1/2」 。php CodeIgniter-3.1.3 Tab分頁和錨點

控制器

public function news($id) 
{ 
    if ($id) { 
     $this_page=$id; 
     var_dump($this_page);  
    } 

    $page = (int)$this->uri->segment(3); 
    var_dump($page); 
    ... 
} 

這是我的頁面的HTML。

<ul class="pagination"> 
<li class="active"><a>1</a></li> 
<li><a href="http://local.test.com/home/news#p1/2" data-ci-pagination-page="2">2</a></li> 
<li><a href="http://local.test.com/home/news#p1/3" data-ci-pagination-page="3">3</a></li> 
<li><a href="http://local.test.com/home/news#p1/2" data-ci-pagination-page="2" rel="next">»</a></li> 
<li><a href="http://local.test.com/home/news#p1/5" data-ci-pagination-page="5">尾頁</a></li> 
</ul> 

但是我var_dump($ this_page),它是空的。 當我刪除錨點時,它可以跳。 我不知道爲什麼它不能跳,當添加錨點時。 希望有專業人士幫忙解決。謝謝!

+0

當您打印$ this-> uri-> segment(3)'時,您希望打印「#p1/2」?如果是這種情況,你不能那樣做。 '#'之後的URL部分無法通過PHP訪問。你可以使用javascript'window.location.hash'來獲取它。 – user6838959

+0

謝謝,我明白了。 PHP在「/」中間的「#」時不能跳轉。 – Fade

+0

太棒了!你能接受下面的答案,這樣可以幫助其他人有類似的問題。 – user6838959

回答

0

無法通過PHP訪問#後的URL部分。您可以使用javascript window.location.hash來獲取它。