我正在使用剃须刀视图引擎处理MVC应用程序。只在空间视图的HTML标记中添加属性?
HTML,Head和Body标签放置在共享视图_Layout.cshtml和其他视图使用此作为布局。
虽然支持应用程序,但我需要在一些页面中添加自定义属性(而不是在所有页面中)。如果我在布局中添加属性,它将出现在所有页面中。您能否引导我如何添加属性只能在所需的页面中进行管理。
下面是我的HTML标签属性:
<html ng-app="business_rules">
我正在使用剃须刀视图引擎处理MVC应用程序。只在空间视图的HTML标记中添加属性?
HTML,Head和Body标签放置在共享视图_Layout.cshtml和其他视图使用此作为布局。
虽然支持应用程序,但我需要在一些页面中添加自定义属性(而不是在所有页面中)。如果我在布局中添加属性,它将出现在所有页面中。您能否引导我如何添加属性只能在所需的页面中进行管理。
下面是我的HTML标签属性:
<html ng-app="business_rules">
您可以创建你需要所有这些属性,只是使用
@{
Layout = "Path/To/Layout.cshtml";
}
参照此布局所需的网页上顶部的布局这些页面。
对于其余页面,您将使用不具有这些属性的不同布局。
您也可以定义控制器的布局。它可以做到如下:
public ActionResult Index()
{
MyMOdel model = new MyMOdel();
//TO DO:
return View("Index", "_AdminLayout", model);
}
我会使用jQuery。只需添加网页上,你需要下面的代码此属性:
<script>
$(document).ready(function(){
$('html').attr("ng-app", "business_rules")
});
</script>
这将是很好的添加属性,但由于该属性用于引导angularJs它需要在角落执行它的引导之前就位。 – Almund
我现在整个完全相同的问题来了,我想出了低于这个最佳的解决方案(我真的不希望完全添加单独的布局只是为了body标签上的一个属性)。你有一对夫妇的建议,对asp net forums以及
我增加了一个项目视图袋,(可能是过度)通用一个叫BodyAttributes:
ViewBag.BodyAttributes = "ng-app=\"moduleName\"";
然后,我使这个纯HTLM在身上的标签
<body @Html.Raw(ViewBag.BodyAttributes)>
这使您的布局非特定页面和角度不需要引导在每个视图。另外,角度是否被引导,现在是从它所属的视图本身中控制的。
谢谢,有没有办法在代码中做到这一点? – Toubi
@ user188129这是在代码中,我猜?看我的更新 –