[英]Adding a script reference to the html head tag from a partial view
如何注入腳本標記,如
<script src="somejsfile"></script>
要么
<script type="text/javascript>some javascript</script>
從局部視圖進入頁面的head標簽?
更新:舊問題的答案這是關於ASP.NET MVC。 我們可以使用RenderSection。 這里使用Razor視圖引擎的MVC 3示例:
布局視圖或母版頁:
<html>
<head>
<script ...></script>
<link .../>
@RenderSection("head")
</head>
<body>
...
@RenderBody()
...
</body>
</html>
查看,例如主頁:
@section head{
<!-- Here is what you can inject the header -->
<script ...></script>
@MyClass.GenerateMoreScript()
}
<!-- Here is your home html where the @RenderBody() located in the layout. -->
即使THX的答案有效,但它並不是一個好的,因為MVC的意圖是無國界的無國籍。 此外,他的解決方案不允許您將腳本放在應該去的位置 - 大多數站點都希望在</body>
標記之前的頁面底部進行腳本聲明,因為它最適合性能和搜索引擎優化。
有一個答案,感謝Darin Dimitrov :
他的回答允許您在布局視圖中從局部視圖注冊腳本。
需要注意的是,他在字典對象中使用GUID來回答標記項目,因此無法保證腳本將按照它們在局部視圖中列出的順序在主頁面中呈現。
有兩種解決方法:
我正在努力研究后來的自己。
祝好運。
部分視圖是UserControl
。 你不能使用ClientScriptManager
RegisterClientScriptInclude
方法嗎?
protected override void OnLoad(EventArgs e) {
base.OnLoad(e);
Page.ClientScript.RegisterClientScriptInclude("some key", "http://website/javascript.js");
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.