簡體   English   中英

Yii Cgridview更新功能不起作用

[英]Yii Cgridview update function not working

我已經為此工作了很長的時間,而且我離理解自己做錯的地方還很遙遠(初學者,請耐心等待)。

我的查看代碼中有此代碼

echo CHtml::dropDownList('symptomCategory',
                                         '',            // selected item from the $data
                                     $this->getSymptomCategories(), 
                                        array(
                                              'id'=>'categorySelectDropDown',
                                              'prompt'=>"Select Symptom Category",
                                              )); 





    $this->widget('zii.widgets.grid.CGridView', array(
            'id'=>'symptoms-grid',
            'selectableRows'=>1, //ability to select one symptom at a time
            'dataProvider'=>$model2->search(),
            //'htmlOptions'=>array('id'=>'symptomsSelectGrid'),
            'columns'=>array(
                'symptomCode',
                'title',
                'inclusions',
                'exclusions',
                'symptomCategory',

            ),
    ));

我的js函數是這樣的:

$('#categorySelectDropDown').change(function()
        {
            var symptomCategory = $('#categorySelectDropDown').val();

            $('#symptoms-grid').yiiGridView('update', 
            {
                data: symptomCategory.serialize()
            });
            return false;
        });

我也嘗試過$(this).serialize()。 無論如何。

根據我在網上發現的示例,這應該可以工作,但是不,它不會更新cgridview。 $ this-> getSymptomCategories()返回一個數組數組('A'=>'A','B'=>'B'等。)

順便說一句,我正在創建模型2 =新的症狀; 內部視圖由另一個模型的控制器呈現,因為我想使用從gridview所做的選擇來填充其他模型的形式。 任何幫助,文檔(在線找不到有用的東西),建議等將不勝感激。 謝謝您的寶貴時間

試試這種更新yiiGridView的方法

 $.fn.yiiGridView.update('symptoms-grid', { 
      data: $('#symptomCategory').serialize() // your form id
 });

yiiGridView似乎沒有更新的原因可能有很多,其中一個是未發送AJAX請求,另一個常見原因是搜索條件邏輯不正確,或者請求的操作未將發布數據傳遞給模型,導致返回相同的數據,使其看起來好像沒有更新。

查看AJAX請求是否從firebug /控制台等進入服務器。如果正在發送,則檢查發布數據是否正確,最后檢查model + controller邏輯是否正確,並且CActiveDataProvider的條件反映了您的搜索條件

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM