由验证控件引起的IE的超级爆笑BUG
来源:互联网 发布:代码大全 知乎 编辑:程序博客网 时间:2024/05/24 06:56
转载自:http://www.cnblogs.com/dingxue/archive/2007/03/22/683401.html
在VS中建立一个网站,在网站里新建一个页面,在页面添加两个文件框,一个RegularExpressionValidator验证控件,再写几行字,好戏开演,哈哈(body部分的代码如下):
<body>
<form id="form1" runat="server">
<div style="width:400px;">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server"
ControlToValidate="TextBox1" Display="Dynamic"
ErrorMessage="这一行是RegularExpressionValidator的错误提示"
ValidationExpression="\d+"></asp:RegularExpressionValidator>
<br />
看看这行能不能不删除<br />
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
</div>
</form>
</body>
简单到不能再简单了,对不?需要注意两点:外面一个DIV的宽度要是400px,可以调整,但不能太宽,一会儿你就明白原因了,RegularExpressionValidator限制TextBox1只能输出数字,一会儿要输入字母以触发验证控件。<form id="form1" runat="server">
<div style="width:400px;">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server"
ControlToValidate="TextBox1" Display="Dynamic"
ErrorMessage="这一行是RegularExpressionValidator的错误提示"
ValidationExpression="\d+"></asp:RegularExpressionValidator>
<br />
看看这行能不能不删除<br />
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
</div>
</form>
</body>
好了,现在按下F5开始运行,在TextBox1中随便输出字母,只要能触发验证控件就可以了,然后就鼠标点击TextBox2以期望移动焦点到TextBox2,一定要用鼠标,键盘的Tab键不好用的。
然后,你发现了什么?焦点在哪里?对,没有错,就是在“看看这行能不能删除”的后面,不在文本框里啊,更搞笑的是你这时候按Backspace键,居然能把这行字删除,然后你可以继续往前删除,RegularExpressionValidator的提示,甚至TextBox1本身都可以从页面中删除。原来当验证控件的提示出来后因为太长而折行了,下面的文本框被向下挤了一行,IE判断焦点不是控件属性?而是用页面上的坐标?
眼镜掉到地上了吧?呵呵,不知道IE内核咋搞的,IE6、IE7还有用IE内核的一些其他浏览器,都可以重现这个BUG,但非IE内核的比如FF就没有这个问题
查看了一下生成到页面的源代码,JS太长没有时间看,有时间再研究下到底是什么原因导致IE如果爆笑
- 由验证控件引起的IE的超级爆笑BUG
- 一个由sscanf函数引起的bug
- 由myeclipse验证引起的错误解决方法
- C/C++超级需要注意的容易引起的Bug
- 由一个bug引起的关于list的思考
- 一段由无符号类型引起BUG的程序
- td中,由IE代理所引起的无法访问
- ActiveX嵌入IE 由刷新引起的问题
- 由printf引起的
- unsigned引起的bug
- typedef引起的bug
- 由文件下载引起的
- 由踢球引起的连锁反应
- 由个性签名引起的。。。
- 由 TypeInitializationException 引起的问题
- 由云端引起的蓝屏
- 由北爱引起的胡思乱想
- 由DevOps引起的思考
- 使用 GCC __attribute__和 link 脚本来控制section基地址
- 宏和inline
- 6410 背光驱动及应用层接口
- c++ primer 函数
- extern 和 全局变量的区别
- 由验证控件引起的IE的超级爆笑BUG
- 手机震动按摩器:随时随地massage
- Dom笔记2:Window对象
- 文件系统 和 操作系统的调度器 --- 一点想法
- 涉足计算机视觉领域要知道的
- java对象池ObjectPool
- CSS hack:针对IE6,IE7,firefox显示不同效果
- gif文件的加载--实现动画效果
- WP-PostViews Plus插件显示博客文章浏览数