我使用django-debug-toolbar
(最新版本V1.2.1),我不斷收到此錯誤在控制檯:Django的調試工具欄裏沒有在Django網站使用jQuery
Empty string passed to getElementById()
關於這一位的jQuery中的代碼(行2757):
...
// HANDLE: $(#id)
} else {
elem = document.getElementById(match[2]);
...
單擊調試工具欄中的每個鏈接都會給出另一個此警告。
當我註釋掉我的主jQuery源文件時,調試工具欄的作品。另外,在Django管理員中,它工作正常,大概是因爲Django管理員使用不同的方法來獲取jQuery。
我試過@Carlton Gibson的答案,但這並不能解決我的問題。我也嘗試過本地jQuery,並從CDN和幾個不同的版本無濟於事...
我試過不同版本的jQuery,並使用django-debug-toolbar
文檔中提供的所有可能的設置。我被卡住了,我真的很喜歡這個工具,並希望它爲我工作。
編輯
既然我已經收到了一些補充意見和答案,我想我會做一個編輯來解釋什麼,我已經試過。我嘗試了所有建議,但沒有成功然而,目前,我所看到的,我是從另一篇關於RequireJS和django-debug-toolbar
承認另一個錯誤:
GET http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js [HTTP/1.1 304 Not Modified 133ms]
ReferenceError: jQuery is not defined localhost:8000:119
TypeError: djdt is undefined toolbar.js:297
Empty string passed to getElementById()
即使jQuery是加載,我告訴django-debug-toolbar
使用我的版本(與DEBUG_TOOLBAR_CONFIG = { 'JQUERY_URL': '', }
),我米仍然收到錯誤,DjDT不起作用。這一次,由於TypeError
,它甚至沒有出現。
EDIT
這裏就是JS導入的base.html
塊。請記住,這是一個快照,它已經改變了很多。
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js" defer></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js" defer></script>
我也有一個回到頂部小部件我用這可能是罪魁禍首。由於我已經使用這段代碼很久了,我從來沒有想過這是一個問題,但現在我懷疑它可能是。此外,由於錯誤與id
有關,腳本使用class
,所以我駁回了它。但是當我發表評論時,DjDT的作品。
在這裏的帖子的幫助下,我解決了這個問題。不知道它與id
的關係如何,但我在a
選擇器中使用的返回頂部小部件發生衝突。我改爲class
,它的工作。我在兩個項目中進行了測試,似乎是固定的。感謝所有的幫助!
您的網站/項目是否恰巧使用RequireJS? –
不是故意的...在關注的項目中使用的唯一庫是Bootstrap和jQuery ... – nicorellius
我提到這個的原因是,目前有一個bug報告:https://github.com/django-debug -toolbar/Django的調試工具欄/問題/ 605。它建議設置'DEBUG_TOOLBAR_CONFIG = {'JQUERY_URL':None}'然後確保在requireJS之前加載jQuery。 –