zoukankan      html  css  js  c++  java
  • mvc@helper 的用法

    Razor中的@helper语法让您能够轻松创建可重用的帮助器方法,此方法可以在您的视图模板中封装输出功能。他们使代码能更好地重用,也使代码更具有可读性。

    字面意思就封装一些我们需要常用到的方法等 方便不同的地方使用(这里的地方是视图模版)

    还是看例子吧!

    如图:我们好多地方都引用到css还有js

    也许你其他地方也需要加载这些js或者css 也许你会说在Shared里面新建一个cshtml页面 在其他页面头部直接加:

    @{
        Layout = "~/Views/Shared/Customer.cshtml";
      }
    

     这样也可以,不过要是比如这种情况呢?(引用网上的图片)

    里面我们看到的就是if else 需求也和上面一样你说怎么办呢?

    还记得我开头说的这句话吧 

    @helper语法让您能够轻松创建可重用的帮助器方法,此方法可以在您的视图模板中封装输出功能。他们使代码能更好地重用,也使代码更具有可读性。

    好了我们在项目解决方案中新建一个文件夹叫App_code ->新建一个tsp.cshtml 页面 名字任意定义。

    @using System.Web.Mvc
    @helper Script(string jsName,UrlHelper Url)
        {
        <script src="@Url.Content("~/Scripts/" + jsName)" type="text/javascript"></script>
    }
    @helper Css(string cssName, UrlHelper Url)
        {
        <link href="@Url.Content("~/Content/" + cssName)" rel="stylesheet" type="text/css" />
    }
    

    其他cshtml页面调用:

    直接在head上:

    @tsp.Css("addVehicle.css",Url)
    @tsp.Script("xx.js",Url)

    当然你也可以写上你的逻辑代码如图:

     

     和上面的调用方法一样 !

     附加 mvc弹出alert

    ViewBag.Script="<script>alert('我是alert');</script>";
    @Html.Raw(ViewBag.Script)

    或者:

    return Content("<script >alert('我是alert!');</script >", "text/html");

     还有一种:

    <script type="text/javascript" >
    function msgShow()
    {
    alrer('我是弹出框');
    }
    </script >

    然后在页面判断是否调用该方法:

    @if(ViewBag.Msg.ToString()=="True") { msgShow(); }

     

  • 相关阅读:
    Excel宏打开URL 特殊字符#变了
    windows升级到1607后操作很卡顿的解决办法
    打包解决方案后,安装时提示只能在IIS5.1以上运行解决方法
    在CS代码页获取input输入框内肉----.net学习点滴
    greenplum 6.7编译安装插件pxf
    greenplum 6.7编译安装插件mysql_fdw
    python3 + greenplum-spark-connector访问greenplum
    centos7无cm安装hadoop+spark
    hive实现update和delete功能
    使得hivecli访问hive
  • 原文地址:https://www.cnblogs.com/y112102/p/2647287.html
Copyright © 2011-2022 走看看