8

我在Uncaught TypeError: Object [object Object] has no method 'datepicker'这里的 javascript 中遇到错误:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.9/jquery-ui.min.js"></script>
<script type='text/javascript'>
$(function() {
    $("#birthday").datepicker({changeMonth: true});
});
</script>

这是我要添加到的生日项目:

<!--// BIRTHDAY //-->
<li class="field">
    <label for="birthday">Birthday</label>
    <div class="field"><input type="text" id="birthday" name="birthday" value="" class="" /></div>
</li>

如您所见,我在尝试使用 datepicker 的位置上方包含了 jquery ui 的源代码。我从http://jqueryui.com/docs/Downloading_jQuery_UI获得了 URL,所以我很确定这是一个有效的 URL。我还尝试上传文件并链接到本地​​副本,但仍然遇到同样的错误。我还能尝试什么?

编辑:

我确实使用此加载了 jquery 库:<script type="text/javascript" src="/includes/js/jquery-1.7.2.min.js"></script>并使用以下脚本进行了验证:

if (jQuery) {
    alert("jQuery library is loaded!");
}
4

4 回答 4

23

从我们的讨论中,我们发现 $ 变量( 的别名jQuery)的行为不正常。通常,这是因为另一个 JS 插件已更改$为代表其他内容。为了解决这个问题,您可以像这样包装您的 jQuery 代码:

jQuery(function($){
    //all jQuery code which uses $ needs to be inside here
});

这将在函数范围内改变 $ 的含义。

于 2012-08-01T16:24:07.650 回答
3

您可能遇到了 jQuery 冲突。在 noConflict 模式下试一试,如下所示:

<script type="text/javascript">
    (function($) {
        $(document).ready(function(){
            $("#datepicker").datepicker();
        });
    })(jQuery);
</script>
于 2013-03-02T04:36:52.770 回答
1

$ 会像

$(function($) {
    $( "#dateTasted" ).datepicker({
      changeMonth: true,
      changeYear: true,
      dateFormat: "yy-mm-dd"    
    });
});
于 2013-11-29T17:37:33.797 回答
0
<script type="text/javascript">
 (function($){
         var pickerOpts = {
           // minDate: new Date(),
            //maxDate: "+3m,",
            showButtonPanel: true,
            showOn: "button",
            buttonImage: "images/cal.png",
            };
    $("#birthday").datepicker(pickerOpts);
      })(jQuery);
</script>  

链接源解决方案

于 2013-10-06T19:08:13.990 回答