3

ajax フィールドを更新するドロップダウン リストがあります。すべて正常に動作しますが、ページの読み込み時に ajax フィールドにデータが入力されません。ページの読み込み時に ajax フィールドの更新を強制するにはどうすればよいですか?

これはビューのドロップダウンリストです:

echo CHtml::dropDownList('category_selection_code', '', $cat_list_data, 
        array('style'=>'width:400px',
              'ajax' => 
                        array(
                            'type'=>'POST', 
                            'url'=>CController::createUrl('articles/GetContentFields'), 
                            'update'=>'#ExtraContentFields', 

                        )
            )
);

*アップデート

私のために働いている解決策を見つけました:

$(document).ready(function(){
    $.ajax({
        type: 'POST',
        data: {category_selection_code: $('#category_selection_code').val()},
        url: '<?php echo CController::createUrl('articles/GetContentFields'); ?>',
        success: function(data){
                    $('#ExtraContentFields').html(data)
                }
    })
})

ajax 処理の記事/GetContentFieldsのコントローラーは、$_POST 配列でcategory_selection_codeパラメーターを待機しています。そして、それをajax 部分のデータセクションに設定する必要があります。

データ: { category_selection_code : $('#category_selection_code').val()},


助けてくれてありがとう。

4

3 に答える 3

1

火の変化イベントがうまくいきました。また、便利なCHtml::activeId(..)方法を見つけました。

<?php
$cs = Yii::app()->clientScript->registerScript(
  'update-brand-car-on-page-load',
  '$(document).ready(function() {
        $("#'.CHtml::activeId($model, 't_brand_car').'").change();
    });'
);
?>
于 2013-01-20T14:02:33.707 に答える
1

あなたが上で行ったことは正しいとは思いません。まず、CHtml::dropdownList() 関数の 4 番目のパラメーターは HTML オプション配列です。CHtml::dropdownList() の関数シグネチャを参照してください。

あなたのAJAX呼び出しを中に入れてください

$(document).ready(function() {
 //Your call goes in here. 
});
于 2012-04-21T11:59:59.857 に答える
0

たぶんこれが役立ちます:

jQuery(function($) {
    $('input name["category_selection_code"]').change();
});
于 2012-04-21T15:33:33.207 に答える