2017-08-03 73 views
3

前段時間我更新了我的jQuery,從此我的項目已經停止執行Javascript。jQuery和Bootstrap:控制檯上的警告 - 資源失敗

這是在索引頁的劇本我用它來測試使用的JS:

@section scripts{ 
<script src="~/js/jquery-3.2.1.min.js"></script> 
<script src="~/lib/bootstrap/dist/js/bootstrap.js"></script> 
<script> 
    console.log("hi"); 
</script> 

}

這是結果在控制檯:

enter image description here

什麼引起我的注意是:

未捕獲錯誤:Bootstrap的JavaScript需要jQuery。在Bootstrap的JavaScript之前,必須包含jQuery。

對警報詳細去我看到:

if (typeof jQuery === 'undefined') { 
    throw new Error('Bootstrap\'s JavaScript requires jQuery. 
jQuery must be included before Bootstrap\'s JavaScript.')} 

檢查jQuery的現在:

enter image description here

它有一個標籤稱其交流中心(extraño西班牙文)

UPDATE

我決定卸載jQuery並引導並重新安裝它們:首先使用jQuery,然後使用Bootstrap。

之後,鮑爾看起來像這樣。

enter image description here

仍然沒有工作壽

檢查網絡控制檯(所要求的用戶),我得到這個:

enter image description here

有劍道UI的不加載

一堆

注:我安裝了kendo ui因爲我需要一個可編輯的網格,但是因爲它被吸引,所以我製作了我自己的和丟棄的kendo ui。

UPDATE X2

注:我工作的ASP.NET核心

看來,答案可能是jQuery的必須引導加載之前。

要檢查這一點,我要通過不同的文件(bower.json,_Layout.cshtml),因爲我通常不會在每個文件中引用腳本。我的項目在背景中通常有一個參考,我相信這些腳本會自動加載到每個視圖中。例如,我從來沒有在索引頁面上引用kendo ui,但在控制檯中我發現它無法加載(因爲它被卸載),但是被調用。

爲此,我檢查了_Layout.cshtml

enter image description here

在這裏我可以看到我引用的是整個項目,我相信工作,它似乎順序是正確的。

希望這個幫助任何答覆!謝謝

+0

你可以檢查瀏覽器網絡面板,是否加載jQuery(jQuery-3.2.1.min.js)?我猜jQuery庫文件沒有加載到瀏覽器。 – Shiladitya

+0

@Shiladitya更新!感謝您的回覆!看起來它正在加載,儘管控制檯仍然顯示消息「Uncaught Error:Bootstrap的JavaScript需要jQuery,jQuery必須包含在Bootstrap的JavaScript之前。」和所有的劍道信息 –

+0

在你的情況下,** jQuery **正在加載,但在bootstrap.js **後**,這就是爲什麼你得到一個錯誤。還有一件事,爲什麼你要加載的jQuery的兩個版本是** jquery.js **另一個是** jquery-3.2.1-min.js ** – Shiladitya

回答

1

在這裏,你有兩個jsfiddle的例子。

https://jsfiddle.net/r9tnow7L/

<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

在上述撥弄,自舉如I所指明在外部資源訂單加載之前的jQuery

https://jsfiddle.net/r9tnow7L/1/

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>

在這種小提琴,jQuery的加載之前引導,檢查外部資源訂購

請檢查瀏覽器網絡面板。 這可能會幫助您瞭解庫文件的順序。

+0

我很想編輯bower.json文件。在這個文件中,依賴關係和分辨率部分,引導程序首先出現。我理解你的答案,但我不確定應該在哪個部分編輯應用程序以改變執行。 bower.json會是正確的嗎? –

+0

你在哪裏標記腳本?在HTML中正確? – Shiladitya

+0

不一定。大多數情況下,我不會在views/html上標記我的腳本,但是我的JS仍然在處理所有的項目。作爲一個證明,我添加了一個jquery-3.2.1-min的src。js **我的看法,你看到,jquery被複制,雖然我只加了一個,另一個是在後臺運行的所有項目,我相信 –