0
A
回答
0
那麼在超現代的瀏覽器(今天它只有webkit,如果我沒有弄錯的話)就是所謂的html5輸入。還有一個type =「number」的輸入。您可以檢查其是否支持或不這樣說:
function hasInputNumber() {
var el = document.createElement("input");
el.setAttribute("type", "number");
var testval1 = "12121.121";
var testval2= "1212.asas.a";
el.value = testval1;
var test1 = el.value === testval1;
el.value = testval2;
var test2 = el.value != testval2;
return test1 && test2;
}
至於其他的,你可以使用輸入類型=「數字」,並試圖模仿它時,不支持此功能與JavaScript行爲。人們通常會嘗試執行此監聽鍵盤事件並取消除數字之外的任何輸入。這實際上很難完全正確地實現,因爲我們可以粘貼輸入,動態驗證浮點數並不是那麼微不足道,因此也是如此。所以我建議你在提交之前進行驗證。
至於驗證本身,有2個功能可以使用 - parseInt
和parseFloat
。不要小心,有一些細微的問題。總是將10作爲第二參數傳遞給parseInt,並記住js將嘗試解析任何數據。例如 - 「121212sdsds」不會被視爲html5輸入中的數字[type =「number」]。但是會用parseFloat解析爲121212。
我應該提到的最後一件事是NaN
。 NaN是一種特殊類型的數字(是的,它實際上是一個數字,因爲typeof NaN == "number"
),它不等於任何東西,甚至不等於它自己。當解析輸入失敗時,parseInt和parseFloat都會返回NaN。由於NaN!= Nan,檢查某些東西的正確方法是NaN,即調用函數isNaN
。
我想這是所有我可以告訴在JS號驗證:)
1
我不知道如果我完全理解這個問題。你只是檢查,以確保只有整型輸入到文本框?如果是這樣,我會使用reg表達式來檢查文本框。是這樣的:
function isNum(elem, msg){
var numericExpression = /^[0-9]+$/;
if(elem.value.match(numericExpression)){
return true;
}
else{
alert(msg);
elem.focus();
return false;
}
}
相關問題
- 1. 驗證整數和浮點值在PHP
- 2. 使用javascript驗證文本框的值
- 3. 驗證整數和浮點數值在一起
- 4. 用於浮點數和整數驗證的JavaScript
- 5. 如何使整數驗證函數不接受浮點值?
- 6. 驗證文本框中的數值
- 7. 使用php preg_match來驗證浮點值
- 8. 驗證文本框的值
- 9. 驗證文本框使用整數ASP
- 10. Alow只在文本域中的整數和浮點值
- 11. zend表單浮點和整數驗證
- 12. 驗證javascript中的整數值
- 13. 驗證KeyPress事件中的浮點值
- 14. 使用SSE的整數/浮點值
- 15. WPF文本框對數值的驗證
- 16. 驗證整數中的值...?
- 17. 如何僅使用Java Swing驗證JFormattedText中的浮點數?
- 18. 驗證浮點類型的文本框文本
- 19. asp.net驗證,以確保文本框具有整數值
- 20. PHP整數到浮點值
- 21. 自定義驗證來比較兩個文本框的浮點值
- 22. 如何僅使用Javascript更改div中文本框的值?
- 23. javascript驗證的文本框
- 24. JavaScript的文本框驗證
- 25. C中浮點類型的整數值
- 26. 需要驗證文本框使用Javascript
- 27. 如何驗證文本框的值
- 28. 如何使用zend表單驗證文本框中的值?
- 29. jQuery中比較兩個文本框的整數值與數字驗證
- 30. 使用負值和正值對整數和浮點數列表進行排序?
你的問題包含初級'must'字,我沒有看到任何地方'這裏是我迄今爲止嘗試過的代碼......'字。發佈你的老師/客戶/經理的要求,而不說明你迄今爲止嘗試過的東西在這裏並不合適。您可能需要聘請一位JavaScript開發人員。 –
對此評論抱歉。 – Rubyist