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("这是一个扩展方法") %>

  • 相关阅读:
    【算法笔记】多线程斐波那契数列
    RAID技术详解
    Mysql 语句汇总(性能篇)
    JS 网页打印解决方案
    MyEclipse修改
    几个需要学习的点和技术
    MyEclipse配色字体等配置的解决方案
    使用hibernate 分表做增删改查
    Web平台开发流程以及规范
    easyui使用总结
  • 原文地址:https://www.cnblogs.com/Sea1ee/p/5971333.html
Copyright © 2011-2022 走看看