2

アクティブなフォームが正常に保存されたときに JavaScript コールバックが必要です。JavaScript コールバックはどこに置くことができますか?

これを行うにはフォームを作成する必要がありAJAXますか、それとも通常の (非 AJAX) フォームで実行できますか?

実際、このフォームをiframe(jQuery UI モーダル ダイアログ内に) 配置します。

のフォームiframeが保存されたら、次の 2 つのことを行う必要があります。

  1. ダイアログを閉じます。
  2. <select>メインの HTML ドキュメントのリストを更新します。
4

2 に答える 2

2

フォームにボタンを追加できます:

<?=CHtml::ajaxSubmitButton('Save', Yii::app()->createUrl('some_url'),
            array('success' => 'function(response){afterSubmitForm(response);}'),
            array('class' => 'btn btn-primary'));
        ?>

サーバーの応答をパラメーターとして取得するjsafterSubmitForm()関数。

于 2013-08-15T15:43:20.323 に答える
2

フォーム送信に ajax ハンドラーを配置してみてください。例として、私のプロジェクトのライブ コードを次に示します。

 echo CHtml::ajaxSubmitButton('submit',          
        array('index'), 
        array(
                'type'=>'POST',
                'data' => array(),
                'success' => 'js:function(){/*callback*/}', 
        ));

不便を避けるために、このボタンに一意の (prefix_random) ID を与えることを忘れないでください

于 2013-08-15T15:43:30.697 に答える