zoukankan      html  css  js  c++  java
  • HtmlHelper扩展 及 页面编码化

    Html.Encode

    新建Action,命名为HtmlEncodeDemo

    将含有特殊字符的值传递给View视图    

    <%= ViewData["script"] %>  会在页面上弹出对话框

    Html.Encode用于编码页面上的特殊字符。 (不会弹对话框,进行了编码)  

    标准写法: <%= Html.Encode(ViewData["script"]) %>

    简单写法: <%: ViewData["script"] %> (主)

    Html.Raw将字符串按原样输出在页面上。(会在页面上弹对话框)

    标准写法: <%= Html.Raw(ViewData["script"]) %>

    简单写法: <%= ViewData["script"] %>   (主)

    <%=  %> 把字符串完整的输出在页面上,不编码

    <%:   %> 会对字符串进行编码

    通过HtmlString防止被Encode编码化

    <% HtmlString str = new HtmlString("<script>alert('HtmlString')</script>"); %>

    <%: str %>   这里通过<%: %>来转换字符串的编码是无效的。

    MvcHtmlString同HtmlString一样,可以让编码无效化

    HtmlHelper扩展

     扩展方法的三要素: 静态类、 静态方法、 this关键字

    在Models中创建一个MyHtmlHelperEx类并设置为static   方法里一个参数永远是给的对象         this 对象 实例名

    任意页面中引用命名空间 <%@ Import Namespace="MvcUserDemo.Models" %> 即可在页面中调用扩展方法 <%= Html.MyLabel("这是一个扩展方法") %>

  • 相关阅读:
    ul做导航栏
    论布局,bfc,margin塌陷和合并,经典bug
    mon-hom
    新浪下拉菜单模仿
    JQ筛选方法,筛选父子元素
    JQuery筛选选择器
    JQuery隐式迭代
    python 和 C# DES加密
    交互设计[1]--设计心理学
    javascript学习(9)——[设计模式]单例
  • 原文地址:https://www.cnblogs.com/Sea1ee/p/5971333.html
Copyright © 2011-2022 走看看