0

CJuidialog ウィジェットを使用してビュー ファイルをラップしていますが、デフォルトの「保存」ボタンは必要ありません。JavaScript を使用して、データ検証のためにサーバーに ajax 呼び出しを行い、それを保存したいからです。私は以下を試しました:

<?php
    if($model->isNewRecord)
         echo CHtml::submitButton('Create');
    else
         echo '<button onClick="javascript: _updatedata('.$model->id.');">Save</button>';
?>

保存ボタンがクリックされたとき。フォーム データを保存するために actionUpdate に移動しますが、データを保存するだけのアクションを作成しました。

function updatedata(id)
{
    var url = '<?php echo Yii::app()->request->baseUrl ?>' + '/index.php?r=user/profileupdate&id='+id;

    ......
    $.ajax({

        url: url,
        type: 'POST',
        dataType: "html",
        data:
        {
         ...
        },
        success: function(data, textStatus, XMLHttpRequest) {
                     if (data != null && data == "success")
                     {
                      //$('#xccdfgrid').trigger('reloadGrid');
                      $('#userprofile').dialog('close');
                     }
                     else
                       alert(data);
                  },
        ......
4

1 に答える 1

0

質問が正しければ、デフォルトのボタンの代わりに、Ajax Things riteを実行できるものが必要だと言っていますか?はいの場合は、が必要ですAjax Submit Button。Yiiは、あなたがやろうとしているよりも簡単にajaxを使用する自由を与えてくれます。CJuiDialogとAjaxSubmitButtonをご覧ください

于 2012-05-02T06:59:44.047 に答える