2015-01-12 89 views
0

我試圖刷新網格,但我得到這個錯誤:如何在使用jQuery的AJAX之後刷新Yii中的網格視圖?

類型錯誤:$ .fn.GridView是未定義

這是我的js代碼:

$(document).ready(function() { 
     $("#username_filter").keyup(function(event) { 
      if ($(this).val().length >3){ 
       $.ajax({ 
        url: "/common/main/filterData/", 
        type: "POST", 
        data: { username : $(this).val() }, 
       }).done(function() { 
        $.fn.GridView.update("#yw0"); 
       }); 
      } 
     }); 
    }); 

和這是看法:

..... 
$this->widget('GridView', array(
     'dataProvider' => $data, 
     //'filter' => '', 
     'itemsCssClass'=>'table', 
     'pager' => array(
       'class'     => 'CLinkPager', 
       'prevPageLabel'   => 'Previous', 
       'nextPageLabel'   => 'Next', 
       'header'    => '', 
       'previousPageCssClass' => 'btn btn-info btn-sm', 
       'selectedPageCssClass' => 'btn btn-warning btn-sm', 
       'internalPageCssClass' => 'btn btn-info btn-sm', 
       'firstPageCssClass'  => 'btn btn-info btn-sm', 
       'nextPageCssClass'  => 'btn btn-info btn-sm', 
     ), 
.... 

也許這是一個noob問題,但在哪裏生成的網格ID?

回答

1

您可以指定自定義ID爲GridView中只指定id屬性爲網格視圖選項

$this->widget('GridView', array(
    'id' => 'my_grid_id', 
    'dataProvider' => $data, 
    // ... 
); 

手動更新試試這個

$('#' + id).yiiGridView('update'); 
+0

非常感謝你 –

0

應該

$.fn.yiiGridView.update("yw0"); 

$.fn.GridView

設置gridview的id,只需爲網格視圖指定id屬性即可。 例如:

$this->widget('GridView', array(
    'id' => 'custom_id', 
    ..... 
)); 
相關問題