我有一个完美的表格。现在,当我添加以下代码时,它会抛出 jQuery(“body”)。undelegate不是函数 错误。
<?php
echo CHtml::dropDownList(
'country_id',
'',
array('0'=>'Choice One',
'1'=>'USA',
'2'=>'France',
'3'=>'Japan',),
array(
'ajax'=>array(
'type'=>'POST',
'url'=>Yii::app()->createUrl('users/aTest'),
'success'=>'function(data){alert(data)}',
)));
?>
在UsersController中,我有以下操作(它也包含在accessRules中)
public function actionATest()
{
echo "this is a test";
}
当我展开错误时,会突出显示特定的代码行(第二行)
jQuery(function($) {
$(".errorDisplay").animate({opacity: 1.0}, 3000).fadeOut("slow");
jQuery('body').undelegate('#country_id','change').delegate('#country_id','change',function(){jQuery.ajax({'type':'POST','url':'/index.php/users/unaPrueba','success':function(data){alert(data)},'cache':false,'data':jQuery(this).parents("form").serialize()});return false;});
任何想法???有人有这个问题吗?无法在任何地方找到它!
答案 0 :(得分:1)
检查您的jQuery包含是否存在冲突。如果您使用自己的标记添加jQuery,Yii可能仍会自动添加您不期望的另一个jQuery文件,作为其内置资源(see this question)的一部分。你可以禁用Yii的jQuery:
'components'=>array(
'clientScript'=>array(
'scriptMap'=>array(
'jquery.js'=>false,
),
),
)