我在 Drupal 6 上使用了出色的 JQuery 上传小部件。由于该小部件没有指定的模块(有 D7,但没有 D6),我正在使用drupal_add_js
(通过帮助模块)添加必要的文件。
所以文件上传工作,但如果我将日期弹出添加到 Drupal 表单,它会导致 JQuery UI(由弹出日期激活)中断。
更具体地说,它会产生以下错误消息:
"TypeError: $.widget.extend is not a function"
我已经阅读了一些处理类似问题的线程,并尝试遵循给出的一些建议。据我所知,问题是这样的:
- JQuery 文件上传小部件使用从文件夹
jquery.ui.widget.js
调用的(在帮助模块中使用)/fileupload/js/
drupal_add_js
- 如果我将日期弹出字段添加到 Drupal 表单,则 Jquery UI
sites/all/libraries/jquery.ui/ui/ui.core.js
会启动,其中已经包含jquery.ui.widget
导致错误
现在在这一点上,我认为删除我的调用是有意义的,jquery.ui.widget.js
但问题是:
- 其他
fileupload.js
依赖它,并且: D6 Jquery UI 模块在通过
/sites/all/libraries/jquery.ui/ui/ui.core.js
AFTER 包含的所有文件之后添加,因此由于在读取时缺乏支持drupal_add_js
而中断(并产生以下错误:fileupload
jquery.ui.widget
TypeError: $.widget is not a function TypeError: $(...).fileupload is not a function )
我尝试将自定义模块的权重(通过编辑数据库中的系统表)设置为较高的值,但仍然在所有文件之后添加了 Jquery UIdrupal_add_js
文件。
如果有人可以就如何解决这个问题提供一些进一步的见解,那将是真正有帮助的。