第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將CSS或JavaScript文件從視圖或局部視圖添加到布局頭

將CSS或JavaScript文件從視圖或局部視圖添加到布局頭

交互式愛情 2019-12-09 09:57:25
版面頁面頭:<head>    <link href="@Url.Content("~/Content/themes/base/Site.css")"          rel="stylesheet" type="text/css" /></head>應用程序中的視圖(AnotherView)需要:<link href="@Url.Content("~/Content/themes/base/AnotherPage.css")"      rel="stylesheet" type="text/css" />AnotherView有一個局部視圖(AnotherPartial),它需要:<link href="@Url.Content("~/Content/themes/base/AnotherPartial.css")"      rel="stylesheet" type="text/css" />問題:如何添加這些CSS文件鏈接到布局頭的AnotherView和AnotherPartial鏈接?RenderSection不是一個好主意,因為AnotherPage可以有多個Partials。將所有CSS添加到頭部是沒有用的,因為它會動態(tài)更改(取決于Anotherpages)。
查看完整描述

3 回答

?
繁星coding

TA貢獻1797條經驗 獲得超4個贊

布局:


<html>

    <head>

        <meta charset="utf-8" />

        <title>@ViewBag.Title</title>

        <link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />

        <script src="@Url.Content("~/Scripts/jquery-1.6.2.min.js")" type="text/javascript"></script>

        <script src="@Url.Content("~/Scripts/modernizr-2.0.6-development-only.js")" type="text/javascript"></script>

        @if (IsSectionDefined("AddToHead"))

        {

            @RenderSection("AddToHead", required: false)

        }


        @RenderSection("AddToHeadAnotherWay", required: false)

    </head>

視圖:


@model ProjectsExt.Models.DirectoryObject


@section AddToHead{

    <link href="@Url.Content("~/Content/Upload.css")" rel="stylesheet" type="text/css" />

}


查看完整回答
反對 回復 2019-12-09
?
慕斯709654

TA貢獻1840條經驗 獲得超5個贊

遺憾的是,默認情況下無法將其section用作其他用戶建議,因為a section僅可用于a的立即child數(shù)View。


但是,有效的是在每個視圖中實現(xiàn)和重新定義section,這意味著:


section Head

{

    @RenderSection("Head", false)

}

這樣,每個視圖都可以實現(xiàn)頭部,而不僅僅是直接子視圖。但是,這僅部分起作用,特別是對于多個部分,麻煩就開始出現(xiàn)了(正如您在問題中提到的)。


因此,真正解決問題的唯一方法是使用ViewBag。最好的可能是CSS和腳本的單獨集合(列表)。為此,您需要確保List在執(zhí)行任何視圖之前初始化了used。然后,您可以在每個視圖/部分視圖的頂部執(zhí)行以下操作(如果Scriptsor Styles值為null,則無需關心:


ViewBag.Scripts.Add("myscript.js");

ViewBag.Styles.Add("mystyle.css");

然后,您可以在布局中循環(huán)瀏覽集合,并根據(jù)中的值添加樣式List。


@foreach (var script in ViewBag.Scripts)

{

    <script type="text/javascript" src="@script"></script>

}

@foreach (var style in ViewBag.Styles)

{

    <link href="@style" rel="stylesheet" type="text/css" />

}

我認為這很丑陋,但這是唯一可行的方法。


****** UPDATE ****由于它首先開始執(zhí)行內部視圖并逐步處理布局,而CSS樣式是級聯(lián)的,因此通過反向樣式列表可能是有意義的ViewBag.Styles.Reverse()。


這樣,首先添加最外部的樣式,這與CSS樣式表的工作方式一致。


查看完整回答
反對 回復 2019-12-09
  • 3 回答
  • 0 關注
  • 518 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號