[英]input disable text entry on copy and paste
下面的函數運行良好,但是當前停止粘貼文本和數字。 有沒有一種方法可以只停止輸入內容中的文本?
var restrictInputToDigits = function(){
$('.digits').keypress(function(key) {
if(key.charCode < 48 || key.charCode > 57) return false;
});
$('.digits').bind('copy paste', function (e) {
e.preventDefault();
});
}
我也希望粘貼數字。
首先獲取文本字段的值。 然后將除數字以外的所有字符替換為空字符。 這應該有幫助
$('.digits').on('change keyup',function(){ var value = $(this).val().toString().replace(/[^0-9]/g, ''); $(this).val(value); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script> <input type="text" class="digits">
$('.digits').on('change keyup paste', function(e){ $this = $(this); $this.val($this.val().replace(/\\D+/, '')); if(e.charCode < 48 || e.charCode > 57){ e.preventDefault(); return false; } });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <input class="digits" value="1234">
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.