我正在使用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);
},
......
答案 0 :(得分:0)
如果你的问题是正确的那么你说的是什么,而不是默认按钮,你需要一些你可以执行Ajax Things rite的东西?如果是,则需要Ajax Submit Button
。 Yii让你可以更轻松地使用ajax然后你想要做。请参阅CJuiDialog and AjaxSubmitButton