我需要通过ajax显示表单后,当对话框窗口打开。我试过这个
$this->beginWidget('zii.widgets.jui.CJuiDialog', array(
'id' => 'register',
'actionPrefix' => 'register',
// additional javascript options for the dialog plugin
'options' => array(
'title' => 'registration',
'autoOpen' => false,
'width' => 800,
'height' => 500,
'buttons' => array(
'showform'=>'js:function(){
$.ajax({
type: "POST",
url : "' .$this->createUrl("/Site/Register"). '"
success:function(data){
$("#form-test").html(data);
}
})}'
),),));
但它不起作用。如何在CJuiDialog中设置回调函数
Try This ..这是更好的JuiDialog打开时点击登录按钮,如:-
<?php
$this->beginWidget('zii.widgets.jui.CJuiDialog', array(
'id' => 'login-dialog',
'options' => array(
'title' => 'View Location',
'autoOpen' => false,
'modal' => true,
'width' => 'auto',
'height' => 'auto',
'resizable' => false,
),
));
$this->endWidget();
echo CHtml::ajaxButton("Login", Yii::app()->createUrl('site/login'), array(
'type' => 'post',
'success' => 'function(r){$("#login-dialog").html(r).dialog("open"); return false;}'
), array('class' => 'search_btn'));
?>
如果您仍然想通过CJuiDialog的按钮选项访问它
试一试:
<?php
$this->beginWidget('zii.widgets.jui.CJuiDialog', array(
'id' => 'login-dialog',
'options' => array(
'title' => 'View Location',
'autoOpen' => false,
'modal' => true,
'width' => 'auto',
'height' => 'auto',
'resizable' => false,
'buttons' => array(
'showform'=>'js:function(){$.ajax({
type: "post",
url: "'. Yii::app()->createUrl('site/login') .'",
success:function(data){$("#login-dialog").html(data);}
});}',
'Cancel'=>'js:function(){$("#login-dialog").dialog("close");}',),
),
));
$this->endWidget();
echo CHtml::link("Login", '#', array(
'onclick'=>'$("#login-dialog").dialog("open"); return false;',
), array('class' => 'search_btn'));
?>