none
asp.net网页显示html网页内容 RRS feed

  • 问题

  • 我想在asp.net网页显示html网页内容,在Page_load里写:
    Page.Visible = false;
    Response.Write(System.IO.File.ReadAllText(Server.MapPath("i.htm"),System.Text.Encoding.Default));
    
    asp.net网页和html网页在同一目录下,在IE中查看两个网页的源文件是一模一样的,其中i.htm中有JavaScript代码,直接开能够执行,但打开asp.net网页却提示出错 
    2009年8月13日 2:41

答案

全部回复

  • 可能 Js 的执行顺序问题,把加载时需要执行的 js 放到最后输出试试
    知识改变命运,奋斗成就人生!
    2009年8月13日 3:08
    版主
  • 如果你是基于Page做此事,并且你的Page还是有ASPX的,那么你的输出不会和HTML一摸一样。Response.Write的内容会先输出,然后是ASPX的执行结果。建议你自己看看输出的代码。
    Microsoft ASP.NET MVP
    2009年8月13日 5:29
    版主
  • 试试

    ClientScriptManager cs = Page.ClientScript;
    cs.RegisterStartupScript(Page.GetType(), "html", System.IO.File.ReadAllText(Server.MapPath("i.htm"),System.Text.Encoding.Default), false);

    你没有说明htm里面都有什么内容,真正的原因只能自己去找

    【孟子E章】
    2009年8月13日 5:40
    版主
  • 但打开asp.net网页却提示出错 
    把出错信息发来

    【孟子E章】
    2009年8月13日 5:41
    版主
  • 试试 
    /// 将文件转换成字符串,常用于读取网站模板
        
    /// </summary>
        
    /// <param name="path"></param>
        
    /// <param name="isSpace"></param>
        
    /// <returns></returns>
        public static string GetTempleContent(string path)
        {
            
    string result = string.Empty;
            
    string sFileName = HttpContext.Current.Server.MapPath(path);
            
    if (File.Exists(sFileName))
            {
                
    try
                {
                    
    using (StreamReader sr = new StreamReader(sFileName))
                    {
                        result 
    = sr.ReadToEnd();
                    }
                }
                
    catch
                {
                    result 
    = "读取模板文件(" + path + ")出错";
                }
            }
            
    else
            {
                result 
    = "找不到模板文件:" + path;
            }
            
    return result;
        }
    2009年8月14日 8:08
  • 您好,请在Response.Write(System.IO.File.ReadAllText(Server.MapPath("i.htm"),System.Text.Encoding.Default));
    下面加一句 this.Response.End();试试
    2009年8月14日 13:41
    版主
  • 应该是你的JS问题所致,比如引用未定义对象等问题,建议你检查一下你的代码,特别关注代码间逻辑关系和顺序。
    http://hi.baidu.com/2009ajun
    2009年8月14日 22:24
  • 2009年8月15日 8:55