zoukankan      html  css  js  c++  java
  • MVC ASPX(webForm)视图引擎 <%:%> 与<%=%>的差别

    控制器

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.Mvc;
    
    namespace MvcApplication2.Controllers
    {
        public class HomeController : Controller
        {
            //
            // GET: /Home/
    
            public ActionResult Index()
            {
                ViewData["Script"] = "<script>alert('Dome')</script>";
                return View();
            }
    
        }
    }
    

    视图

    <%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>
    
    <!DOCTYPE html>
    
    <html>
    <head runat="server">
        <meta name="viewport" content="width=device-width" />
        <title>Index</title>
    </head>
    <body>
        <div>
            <!-- 假设用=号的话,就是原封不动的输出ViewData["Script"]中的代码,这样easy遭到跨站脚本的攻击,不够安全,所以这里是弹出一个对话框吗,对话框内容为Dome-->
            <%=ViewData["Script"] %>  
    
             <!--<%: %>相当于<%=Html.Encode(<script>alert('Dome')</script>) %> 推荐大家用冒号,这里输出的是<script>alert('Dome')</script>-->  
            <%:ViewData["Script"] %> 
    
            <!--假如说我如今就是想在前台页面输出一些Html标签,或一些代码,就想让它原封不动的去运行那段代码,比方说我如今就想给一个Div标签放到页面去,怎么办呢,下面三种方法都能够,并且不用=号更安全-->
    
            <%:Html.Raw("<div>我是div标签</div>") %>
    
            <%:new HtmlString("<p>我是p标签</p>") %>
    
            <%:new MvcHtmlString("<p>我也是p标签</p>") %>
    
           
    
        </div>
    </body>
    </html>
    



  • 相关阅读:
    scrapy框架之comand line tool
    CSS选择器与XPath语言
    Selenium之Web页面滚动条滚操作
    Selenium+Chrome+PhantomJS 爬取淘宝
    爬取今日头条中的图片
    django 和 mongdb 写一个简陋的网址,以及用django内置的分页功能
    charts 画饼图
    charts 画折线图
    oracle的char和varchar类型
    ORA-02049: 超时: 分布式事务处理等待锁的解决方法
  • 原文地址:https://www.cnblogs.com/blfshiye/p/4015606.html
Copyright © 2011-2022 走看看