Php 部分呈现div中的ajax验证

Php 部分呈现div中的ajax验证,php,ajax,validation,yii,Php,Ajax,Validation,Yii,我正在尝试在中处理ajax验证,这部分是通过使用ajax呈现的 $('.a').click(function(event){ $.ajax({ url: '<?php echo Yii::app()->createUrl('myController/myAction'); ?>', type: "POST", success: function( data ) {

我正在尝试在
中处理ajax验证,这部分是通过使用ajax呈现的

$('.a').click(function(event){
        $.ajax({
            url: '<?php echo Yii::app()->createUrl('myController/myAction'); ?>',
            type: "POST",
            success: function( data ) {
                $('.b').html(data);
          }
        });
    });

如果我使用
render
而不是
renderPartial
,它将按预期工作。我错过了什么


任何帮助都将不胜感激。

我的朋友帮我解决了这个问题。以下是他的解决方案:

渲染结果应使用
processOutput
进行后处理。此方法“对render()生成的输出进行后处理。此方法在render()和renderText()的末尾调用。如果有注册的客户端脚本,此方法将在适当的位置将它们插入到输出中。如果有动态内容,也将插入它们。此方法还可以将持久页面状态保存在页面中有状态窗体的隐藏字段中。”

渲染结果是否将进行后处理由
$processOutput
参数定义,该参数默认为
false
renderPartial(字符串$view,数组$data=NULL,布尔$return=false,布尔$processOutput=false)

而不是

$this->renderPartial('myView', array('myForm'=>$form));
你应致电:

$this->renderPartial('myView', array('myForm'=>$form), false, true);

如果您怀疑回调成功,请尝试在那里输出一些内容以验证它是否被调用。您可能还希望提高日志级别,以便全面了解服务器上发生的情况。另外,尝试使用REST客户端或其他能够独立于UI显示输出的工具来点击AJAX帖子url。
$this->renderPartial('myView', array('myForm'=>$form), false, true);