簡體   English   中英

為什么jquery不能在布局中定義的頁面上工作

[英]Why jquery doesn't work on a page defined in layout

我有一個razor布局,它加載css jquery等。
當我添加控制器動作視圖時,我將布局設置為_Layout.cshtml
但是jquery在該頁面中不起作用。
所以我必須在每個視圖中添加@Scripts.Render("~/bundles/jquery")
為什么導入的jquery不是從_Layout.cshtml繼承的? 這是正常的嗎?

這應該在_Layout.cshtml的底部附近:

@Scripts.Render("~/bundles/jquery")
@RenderSection("scripts", required: false)

這應該在您的子視圖中:

@section scripts {
    @Scripts.Render("~/scripts/jquery.infinitescroll.js") // Or some other script
}

您的子視圖中的所有腳本(引用jquery)都需要位於腳本部分,而不是放在頁面正文中。 這包括任何想要使用jquery的腳本標記。 例如,我的一個頁面具有以下內容:

@section scripts {
    @Scripts.Render("https://maps.googleapis.com/maps/api/js?key=&sensor=false")
    <script src="~/scripts/google-maps-3-vs-1-0.js"></script>
    <script>
        Stuff here
    </script>
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM