为了账号安全,请及时绑定邮箱和手机立即绑定

Asp.net开发中的一个问题

Asp.net开发中的一个问题

ABOUTYOU 2018-09-14 09:06:54
在.aspx页面上有这样一个标签<div id="tipMessage" runat="server"></div>,当点击一个服务器控件,比如说Button后,我在.cs页面中用这样一段代码提示操作结果:tipMessage.InnerHtml="操作成功!<script type='text/javascript'>这里面的JS代码的作用就是等待一定时间后,将tipMessage里面的内容清空</script>"。可我发现,如果以前已经执行了代码tipMessage.InnerHtml......的话,页面上能显示出“操作成功!”的提示信息,这个信息也能定时消失。但以后随便单击一个服务器控件(这个控件在cs中不会执行tipMessage.InnerHtml......代码),页面上都会出现“操作成功!”,它也会定时消失。我估计这跟PostBack,但不知道怎么解决?
查看完整描述

2 回答

?
繁花如伊

TA贡献2012条经验 获得超12个赞

定时消失时肯定的,因为页面的JavaScript在页面刷新的时候会执行一次,但是你随机单击任何其他服务器控件的时候,页面会刷新,JavaScript是动态执行的,因此之前的JavaScript执行结果会无效,但是你的tipMessage因为在服务器端(单击其他的控件没有影响此div值),所以赋值“操作成功”是不变的,因此还是会输出到页面,所以这时就算你其他控件什么的不执行,tipMessage也会输出“操作成功”,因此必须在Page_Load事件中清空tipMessage.InnerHtml。

查看完整回答
反对 回复 2018-09-19
?
慕尼黑的夜晚无繁华

TA贡献1864条经验 获得超6个赞

ipMessage.InnerHtml="操作成功

放到这个button事件中,不用放在page_load事件中或者加个参数判断


查看完整回答
反对 回复 2018-09-19
  • 2 回答
  • 0 关注
  • 473 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信