TypeError:$(...)。datepicker不是函数

时间:2013-10-22 06:45:26

标签: javascript jquery yii datepicker

我正在使用Yii Framework开发一个应用程序。我正在使用

$(document).ready(function(){

    $('.date-picker').datepicker();

});

它运行的所有地方,但当我将它放在index.php视图文件中时,它在firefox控制台中给我以下错误:

  

TypeError:$(...)。datepicker不是函数

     

$( '日期选择器。')日期选择器();

我在所有地方都搜索了上述错误,但我的条件中没有任何解决方案适用于stackoverflow和此查询的其他博客。

由于

3 个答案:

答案 0 :(得分:4)

尝试在视图页面中包含jquery库文件。两个星期前我遇到了同样的问题,但是当我把它称为separetely时,问题就解决了。

<?php
Yii::app()->clientScript->registerCoreScript('jquery');
Yii::app()->clientScript->registerCoreScript('jquery.ui');

Yii::app()->clientScript->registerScriptFile(Yii::app()->baseUrl .'/js/jquery.ui.datepicker.js'); ?>

答案 1 :(得分:2)

您的错误来源很可能是jQuery的 noConflict()设置。以下是Wordpress Function Reference的推理:

  

WordPress附带的jQuery库设置为 noConflict()   模式(见wp-includes/js/jquery/jquery.js)。这是为了防止   与WordPress的其他JavaScript库的兼容性问题   可以链接。

     

noConflict()模式下,jQuery的全局$快捷方式不是   可用。

您只需将$替换为jQuery,您的代码即可使用。

试试这个:

jQuery(document).ready(function() {
  jQuery('.date-picker').datepicker();
});

或者,如果您在函数中传递$,则可以继续使用jQuery(document).ready(function($) { $('.date-picker').datepicker(); }); ,如下所示:

{{1}}

答案 2 :(得分:0)

Yii Framework 不提供默认的datepicker 。您必须使用datepicker的任何扩展名。

检查datepicker extension for yii framework。还检查一下 jQuery-ui datepicker in Yii framework