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 仪式的东西?如果是,那么您需要拥有Ajax Submit Button. Yii 让您可以更轻松地使用 ajax。请参阅CJuiDialog 和 AjaxSubmitButton

于 2012-05-02T06:59:44.047 回答