由驗證控制項引起的IE的超級爆笑BUG

2022-02-02 10:38:32 字數 1564 閱讀 6386

在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只能輸出數字,一會兒要輸入字母以觸發驗證控制項。

好了,現在按下f5開始執行,在textbox1中隨便輸出字母,只要能觸發驗證控制項就可以了,然後就滑鼠點選textbox2以期望移動焦點到textbox2,一定要用滑鼠,鍵盤的tab鍵不好用的。

然後,你發現了什麼?焦點在**?對,沒有錯,就是在「看看這行能不能刪除」的後面,不在文字框裡啊,更搞笑的是你這時候按backspace鍵,居然能把這行字刪除,然後你可以繼續往前刪除,regularexpressionvalidator的提示,甚至textbox1本身都可以從頁面中刪除。原來當驗證控制項的提示出來後因為太長而折行了,下面的文字框被向下擠了一行,ie判斷焦點不是控制項屬性?而是用頁面上的座標?

眼鏡掉到地上了吧?呵呵,不知道ie核心咋搞的,ie6、ie7還有用ie核心的一些其他瀏覽器,都可以重現這個bug,但非ie核心的比如ff就沒有這個問題

檢視了一下生成到頁面的源**,js太長沒有時間看,有時間再研究下到底是什麼原因導致ie如果爆笑

由雲端引起的藍屏

今天早上剛起床,舍友就嚷嚷著電腦 聯想g450 重啟,我首先想到的是由於溫度的原因引起電腦自我保護,他卻說電腦剛開啟。重啟之後想用360體檢看是否為病毒 木馬 的原因 注 嚴格來說360算不上是防毒軟體,只能算的上是系統優化軟體 還沒走一半電腦藍屏,藍屏介面一閃而過,沒看到藍屏 引起藍屏的原因是很多...

由memcpy越界引起的崩潰

乙個linux的cm出了問題,在開發環境下,是正常的。在現場是崩潰的。比較環境的區別,輸入的資料不一樣。還好運氣不錯,拿到現場的資料,在開發環境中也能重現其中乙個資料引起的崩潰問題。崩潰現象,單步到函式fna,任務都做了,看任務結果也都有效,但是從函式返回時,還沒到呼叫處,就崩潰了。這bug現象,我...

由pthread create引起的段錯誤

一般執行緒的結束是由程序內的其他執行緒來結束的,呼叫pthread cancel.但是需要考慮到被結束執行緒的性質,一方面,執行緒是可被結束,也可無法結束,即不響應該訊號 另一方面,如果執行緒是可被結束的,那麼結束的方式有兩種,一種是同步,當執行緒收到這個訊號的時候先掛起,等到下乙個取消點時再響應該...