2012-09-20 77 views
2

我有textarea,我的onkeypress工作得很好。但是,如果我一直嘗試輸入第256個字符,則最終(第2或第3次)我的警報框也會打印一些我沒有寫的checkbox。它說是什麼導致警報復選框顯示額外的複選框?

[] Prevent this page from creating additional dialogs

我很困惑,在瀏覽器(Firefox)或JavaScript是否這樣做。這是代碼。

function warnOverDescLen() 
{ 
var misc_text = document.forms["InvGenPayDonation"]["TransDesc"].value; 

    if(255 < misc_text.length) 
    { 
    alert("You cannot enter more than 255 characters."); 
    return false; 
    } 

    return true; 
} 
. 
. 
. 
<textarea rows="4" cols="60" name="TransDesc" id="TransDesc" 
onkeypress="return warnOverDescLen();" ></textarea> 
+5

瀏覽器補充說。你無法控制它。 – bfavaretto

+0

^他說什麼。 –

+0

OP的答案特別有用,因爲它們讓我在出現問題時嘗試切換狀態字段顏色,然後,作爲驗證表單的一部分,禁用狀態字段,因爲我不需要它POST的一部分。 – octopusgrabbus

回答

3

瀏覽器添加了該功能以防止網站使用(線程鎖定)彈出消息的攻擊惱人用戶。

爲避免此問題,我建議您在文本框附近的小標籤中顯示消息(「您不能輸入超過255個字符。」),而不是使用alert

1

這是瀏覽器,詢問您是否要禁用重複的警報消息。例如,如果無限循環顯示警報消息,這對於某些開發很有幫助。 這給出了一種方法來忽略這種情況。否則,它是一種用戶審美特徵。