专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »Html教程 » response.write:Response.Write后css失效问题的解决 »正文

response.write:Response.Write后css失效问题的解决

来源: 发布时间:星期四, 2009年2月12日 浏览:274次 评论:0


这两天测试网站WebSite时候发现网站WebSite注册页面个bug实现功能是当点击”注册”按钮进行注册后台代码中判断验证码当用户输入验证码和生成验证码不致时以alert形式弹出对话框提示用户验证码.但这时当对话框弹出后页面中有些css样式失效.
  查找了下原因发现是生成弹出对话框代码是这么写:Response.Write("<script>alert('验证码不正确');</script>");这段代码在执行时候会在页面最顶部生成对应html代码.而由于ASP.NET 2.0默认采用http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd文档类型定义它就要求在<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">前面不能有任何输出
  解决办法是:不用Response.Write思路方法(缺点是丢失css样式 2是破坏代码结构).而用ClientScript.RegisterClientScriptBlock思路方法来实现相应功能.我代码: /**//// <summary>
/// 弹出提示信息框
/// </summary>
/// <param name="strKey">key值</param>
/// <param name="strInfo">提示信息</param>
public void MessageBox( strKey, strInfo)
{
(!ClientScript.IsClientScriptBlockRegistered(strKey))
{
strjs = "alert('" + strInfo + "');";
ClientScript.RegisterClientScriptBlock(this.GetType, strKey, strjs, true);
}
}
  使用如下方式:
MessageBox("opsuccess","恭喜,密码修改成功,请记住新密码!");
  这样既不会产生css样式丢失问题生成html代码也不破坏html文件结构.
0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: