首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将jQuery小部件添加到Drupal页面导致`$不是函数`

将jQuery小部件添加到Drupal页面导致`$不是函数`
EN

Stack Overflow用户
提问于 2013-04-21 01:44:02
回答 5查看 1.1K关注 0票数 0

我正尝试在Drupal上的表单中添加一个datepicker小部件。

我有一个包含以下代码的页面:

代码语言:javascript
复制
<script>
$(function() {
    $( "#datepicker" ).datepicker({
        changeMonth: true,
        changeYear: true
    });
});
</script>
<form action="/scripts/new-customer.php">
<div>Birth date: <input type="text" id="datepicker" name="bday" /></div>
</form>

但不幸的是,我得到了主题中的错误。我试着写成这样:

代码语言:javascript
复制
<script>
    (function($) {
        $( "#datepicker" ).datepicker({
            changeMonth: true,
            changeYear: true
        });
    })(jQuery);
</script>

但我在后面的那一行得到了同样的错误。

不幸的是,我无法进一步了解Drupal文档。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-04-21 01:52:23

因为其他JavaScript库冲突。使用jQuery.noConflict()

代码语言:javascript
复制
var jq = jQuery.noConflict();

jq(function() {
  jq( "#datepicker" ).datepicker({
        changeMonth: true,
        changeYear: true
    });
});

在初始化之前

代码语言:javascript
复制
drupal_add_library('system','ui.datepicker')
票数 3
EN

Stack Overflow用户

发布于 2013-04-21 02:09:27

不确定,但这可能会有帮助:

代码语言:javascript
复制
jQuery(function($) {
  $("#datepicker").datepicker({
    changeMonth: true,
    changeYear: true
  });
});
票数 1
EN

Stack Overflow用户

发布于 2013-04-21 01:51:45

Drupal可能正在使用jQuery's noConflict option。请尝试使用jQuery("#datepicker").datepicker()

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16123344

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档