2013-08-27 52 views
1

我在Drupal 6上使用了優秀的JQuery上傳小部件。由於沒有爲該小部件指定模塊(有D7,但不是D6)我使用drupal_add_js(通過輔助模塊)添加必要的文件。

因此,文件上傳工作,但如果我將日期彈出添加到Drupal窗體,它會導致JQuery UI(由彈出日期激活)中斷。

更具體地講它會產生此錯誤消息:

"TypeError: $.widget.extend is not a function" 

我讀過一些線程處理類似問題,並試圖遵循一些給出的建議。至於我可以告訴這個問題是這樣的:

  1. jQuery的文件上傳插件使用從/fileupload/js/文件夾名爲jquery.ui.widget.js(一個輔助模塊中使用drupal_add_js
  2. 如果我添加日期彈出場一個Drupal從sites/all/libraries/jquery.ui/ui/ui.core.js踢,其中已經包含jquery.ui.widget形成jQuery UI的在這一點上,我認爲這將只是有意義刪除我呼籲jquery.ui.widget.js導致錯誤

,但現在的問題是:

  1. 其他fileupload.js依賴於它,並且:
  2. 之後包括通過drupal_add_js所有文件的D6 jQuery UI的模塊添加/sites/all/libraries/jquery.ui/ui/ui.core.js,並因此打破fileupload因爲它缺少在它的讀取時間的jquery.ui.widget支持(和產生以下錯誤:

    TypeError: $.widget is not a function 
    TypeError: $(...).fileupload is not a function) 
    

我試着設置我的自定義模塊的重量(通過在數據庫編輯系統表)到高值,但仍然會在所有drupal_add_js文件後添加Jquery UI文件。

如果有人能提供一些進一步的見解,如何解決這個問題真的有幫助。

回答

0

我在WordPress中看到了同樣的問題,事實證明,使用.fileupload()的插件添加了自己的Jquery UI版本,並且WordPress添加了另一個版本。當我刪除了額外的JqueryUI它工作。

這個問題使我朝着正確的方向前進:jQuery UI TypeError: e.widget.extend is not a function

相關問題