博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Response.Write()方法响应导致页面内容变形的问题
阅读量:6986 次
发布时间:2019-06-27

本文共 1200 字,大约阅读时间需要 4 分钟。

Response.Write()方法响应导致页面内容变形的问题

来源: 张林§的日志

= = 原来是这样……我说CSS怎么都失效了呢。。坑爹的ASP.NET

首先是js弹出系统提示窗口的解决

Response.Write的确可以输出Javascript脚本。但是这样做会使得页面的CSS样式彻底失效。 如果你是Asp.net 2.0,则可以通过下面的代码实现执行JS脚本: ClientScript.RegisterStartupScript(this.GetType(),"alt","alert('这样执行脚本CSS不失效')",true);

 

然后是页面的跳转

转自:

比方说在页面里面有个LinkButton,要点击以后要打开新窗口,而且新窗口的URL是根据用户选择结果动态产生的。LinkButton的代码这样写:     protected void ServiceManHistoryButton_Click(object sender, EventArgs e)     {         Response.Write("<script>window.open('EquipmentHistory.aspx?eid=" + ServiceManDropDownList.SelectedValue + "');</script>");      } 运行以后会发现,新窗口是打开了,但是原来页面的字体变大了,奇怪的问题! 有人想也不想就说是CSS没设置好,对这些人我很无语,求教的时候最怕遇到他们 实际原因是直接Response.write输出脚本代码到顶部,打乱了文档模型,所以造成了这样的结果。

OK,解决方法有两个。
方法一:把Response.Write()语句替换为这个 Page.RegisterStartupScript("ServiceManHistoryButtonClick", "<script>window.open('EquipmentHistory.aspx?eid=" + ServiceManDropDownList.SelectedValue + "');</script>");
这个方法用于在页响应中发出客户端脚本块,前一个参数是该Script在页面中的唯一名称(随便起,不重复就行),后一个是脚本内容。
这个方法应该是微软官方推荐的方法。
方法二:在原程序的Response.Write()语句后再加一句
Response.Write("<script>document.location=document.location;</script>");
想出这个办法的人真高!但是如果在一个输入页面,有多提醒状态下,使用这个办法会导致页面内容清空哦 哈

源地址:http://blog.renren.com/GetEntry.do?id=731210778&owner=271653490

转载地址:http://tjqpl.baihongyu.com/

你可能感兴趣的文章
年终盘点篇:2018云中数据管理趋势预测
查看>>
内容电商崛起背后:这家企业瞄准短视频 靠天猫淘宝掘金
查看>>
李想创办的车和家发布智能电动车品牌“理想智造”
查看>>
智利海岸附近发生里氏5.6级地震 无人员伤亡消息
查看>>
手机上的中国“轻春运”
查看>>
中国税务机关确保减税降费政策落地生根
查看>>
中蒙二连边民互市贸易区出口额创新高
查看>>
BAT架构师总结之网站核心架构要素
查看>>
摩拜将更名为“美团单车” 网友:可送外卖吗?
查看>>
广东惠州公安一名副所长因公牺牲
查看>>
除了火药味,这里的演练还多了……
查看>>
继BERT之后,这个新模型再一次在11项NLP基准上打破纪录
查看>>
RTX 2080时代,如何打造属于自己的深度学习机器
查看>>
“破碎-重组-破碎” CSS3实现Lowpoly风格变形动画终极篇
查看>>
VKDevTool App黑盒调试工具
查看>>
那个你身边悄悄离职的人去哪儿了?IT人才流动大盘点
查看>>
精读《手写 SQL 编译器 - 智能提示》
查看>>
React.js 小书 Lesson4 - 前端组件化(三):抽象出公共组件类
查看>>
Java多线程干货系列—(四)volatile关键字| 掘金技术征文
查看>>
我们来翻翻元素样式的族谱-getComputedStyle
查看>>