2013-02-21 70 views
0

我在單個頁面上面臨多個網格視圖的一些問題。Yii,同一頁面上的多個網格視圖

在開始時,我打開jQueryUI選項卡中的單個網格視圖,它的分頁工作正常。現在,當我使用ajax調用新網格視圖打開一個新選項卡時,新網格視圖上的分頁工作正常,但第一個網格視圖上的分頁鏈接呈現/打開新頁面,而不是使用ajax更新網格視圖,就像尋呼機鏈接是正常的鏈接

我沒有得到確切的問題或原因背後,任何幫助,將不勝感激。

回答

2

在AJAX加載的內容的問題奠定,在內容上的點擊事件將不會被註冊,你將需要。對(「點擊」)代替。點擊()

的問題進行了說明here

+0

事件得到正確註冊。當我打開第二個網格視圖時,它的所有分頁器鏈接都可以正常工作。但是,第一個(以前打開的)網格視圖(正常工作,直到我打開新網格)的分頁器鏈接停止工作,並且就像他們是正常鏈接一樣行事。 – 2013-02-22 06:10:53

+0

其次,我應該在哪裏更改'.click'爲.on?問題出在網格視圖上。 – 2013-02-22 06:12:38

0

我以前有同樣的問題。點擊分頁或排序後,鏈接會在新頁面中打開。

如果您注意到,您會發現該網址沒有&ajax=id-of-the-grid值,其中id是要更新的網格的ID。

對我來說,解決問題的方法是在視圖中添加腳本jquery.yiigridview.js文件, 並手動重新初始化視圖。

這是一段代碼,解決了我煩人的問題。

<script type="text/javascript" src="/Project/assets/dd5f9a70/gridview/jquery.yiigridview.js"></script> 
    <script type="text/javascript"> 

    /*<![CDATA[*/ 
    jQuery(function($) { 
    jQuery('[data-toggle=popover]').popover(); 

    jQuery('body').tooltip({"selector":"[data-toggle=tooltip]"}); 

    jQuery('#project-grid').yiiGridView(
{'ajaxUpdate':['project-grid'], 
'ajaxVar':'ajax', 
'pagerClass':'pagination', 
'loadingClass':'grid-view-loading', 
'filterClass':'filters', 
'tableClass':'table table-stats table-striped table-sortable', 
'selectableRows':1, 
'enableHistory':false, 
'updateSelector':'{page}, {sort}', 
'filterSelector':'{filter}', 
'url':'/Project/index.php/realTime/AjaxUpdateProjectGrid', 
'pageVar':'Project_page', 
'afterAjaxUpdate':function() { 
       jQuery('.popover').remove(); 
       jQuery('[data-toggle=popover]').popover(); 
       jQuery('.tooltip').remove(); 
       jQuery('[data-toggle=tooltip]').tooltip(); 
      }}); 
    }); 
    /*]]>*/ 

    </script> 

希望它可以幫助別人。 謝謝, Maxx

相關問題