我正在處理一個HTML頁面,在該頁面上有一些輸入控件。 在這些輸入控件中,用戶應輸入一個浮點數,p.e. 「1234,56」在點/逗號前面有四個整數,後面有兩個整數(最大值)。 如何在輸入值的同時或之後找出值,如果值正確(點/逗號前後的整數數量;僅爲整數)。檢查HTML輸入中輸入的用戶值是否爲浮點數
在此先感謝!
我正在處理一個HTML頁面,在該頁面上有一些輸入控件。 在這些輸入控件中,用戶應輸入一個浮點數,p.e. 「1234,56」在點/逗號前面有四個整數,後面有兩個整數(最大值)。 如何在輸入值的同時或之後找出值,如果值正確(點/逗號前後的整數數量;僅爲整數)。檢查HTML輸入中輸入的用戶值是否爲浮點數
在此先感謝!
我們可以通過將控件放置在窗體上,使用輸入的模式屬性和提交按鈕來將模式與值進行比較。
第一個例子:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Checking floatnumbers</title>
<meta charset="utf-8" />
</head>
<body>
<form>
<input type="text"
maxlength="7"
placeholder="____,__"
title="Please use format ####,##"
pattern="\d{1,4}(|\.|,)?\d{1,2}" />
<br />
<!-- For testing input patterns -->
<input type="submit"
value="Submit" />
<br /><br />
<!-- Resets/clears the form -->
<input type="reset"
value="Reset" />
</form>
</body>
</html>
首先,輸入必須的類型 「文本」,而不是 「數量」 如常。 該模式意味着用戶可以/必須在點或逗號前輸入1到4個數字。 可以輸入點/逗號和以下1到2位小數,但不是必需的。
如果用戶輸入p.e. 「12345」並點擊提交按鈕,它將顯示來自財產標題的文本錯誤。
也許有些用戶不想輸入像「1,23」這樣的數字,但是 - 因爲他們很匆忙 - 只是「23」。 所以我們來看看第二個例子。
第二個例子:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Checking floatnumbers</title>
<meta charset="utf-8" />
</head>
<body>
<form>
<input type="text"
maxlength="7"
placeholder="____,__"
title="Please use format ####,##"
pattern="\d{0,4}(|\.|,)?\d{1,2}" />
<br /><br />
<!-- For testing input patterns -->
<input type="submit"
value="Submit" />
<br /><br />
<!-- Resets/clears the form -->
<input type="reset"
value="Reset" />
</form>
</body>
</html>
正如你所看到的點/逗號前輸入的最小值爲0,最大值爲4 所以有可能進入像floatnumber」,23 」。
如果我們想在輸入法輸入是負面的floatnumbers我們改變模式"^[+-]?\d{0,4}(|\.|,)?\d{1,2}"
和最大長度爲8
另行通知 有了上面的圖案,我們仍然可以進入像一個數字「12345」這在我們的案例中是不正確的。 正確的模式必須是:"^[+-]?\d{1,4}((\.|,)\d{1,2})?"
或"^[+-]?\d{0,4}((\.|,)\d{1,2})?"
以供將來參考,你很可能得到對這個問題下投票,因爲它顯示了你的一部分沒有力氣甚至企圖你自己的問題。這個網站是爲了尋求幫助而不是正確的代碼,而不是一個完成自由職業工作的網站。 – leigero
對不起,我之所以加上這個問題,僅僅是因爲我知道很多開發人員都有同樣的問題,我得到了一個解決方案,我想公開這個問題,這樣每個人都可以從中受益。 –
傻了,我剛剛意識到你回答了你自己的問題,以至於基本上使我想到的一切無效。繼續。 – leigero