【发布时间】:2012-05-01 22:13:28
【问题描述】:
我正在使用 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);
},
......
【问题讨论】:
-
您的代码看起来不错,但您的问题不清楚,究竟是什么问题?您要调用哪个动作,正在调用哪个动作?
-
如何进行验证?
updatedata是否被执行?