![](/img/trans.png)
[英]javascript to allow only negative and positive numbers and decimal upto 6 digits on keypress
[英]Allow only positive and negative numbers in textbox using JavaScript regex
我有一個名為 count 的文本框。 我想使用 JavaScript 或 jQuery 正則表達式在文本框中只輸入正數和負數。 文本框中不允許出現“文本”、“小數”和“特殊字符”。 即使復制和粘貼也應該只取正數或負數。
重要的:
如果我復制並粘貼文本或小數點或特殊字符,也不應采用。 它應該只取正數或負數。
我想輸入和粘貼沒有小數的負值。
箭頭鍵應該可以工作。
Shift 、 Ctrl 、 Home 、 End 、 Enter像這樣的按鈕也應該工作。
請檢查以下小提琴並修改它。
$(".allownumericwithoutdecimal").on("keypress keyup blur",function (event) { $(this).val($(this).val().replace(/[^\\d].+/, "")); if ((event.which < 48 || event.which > 57)) { event.preventDefault(); } });
<span>Int</span> <input type="text" name="numeric" class='allownumericwithoutdecimal'> <div>Numeric values only allowed (Without Decimal Point) </div>
我是正則表達式的新手。 請幫我做這件事。
您正在尋找的正則表達式是這樣的:
正則表達式: ^-?[0-9]+$
解釋:
它檢查可選的-
ve 符號。 並且只允許數字。
我使用了[0-9]
而不是\\d
因為后來的一個表示不同語言中的數字。
PS:我不是 Javascript 程序員,所以如果有人想添加小提琴或使用這個正則表達式,請繼續。
這也可以在沒有正則表達式的情況下使用 Javascript keypress 和 charCode 實現。
<input type="number" (keypress)="keypress($event, $event.target.value)" >
keypress(evt, value){
if (evt.charCode >= 48 && evt.charCode <= 57 || (value=="" && evt.charCode == 45))
{
return true;
}
return false;
}
給定的代碼不允許用戶在運行時輸入字母或小數,只能輸入正整數和負整數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.