利用 keyCode 控制数字输入框
下面这段代码,可以控制用户只能输入数字、小数点、负号,且数字第一位不可为0:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>lik-input-number</title> </head> <body> <input type="text" class="lik_input_number" style="color:#ccc" value="请输入数字" onfocus="fn_focus(this);" onblur="fn_blur(this);"> </body> <script src="jquery-1.8.1.min.js"></script> <script> // 输入框模拟placeholder function fn_focus(ele) { if (ele.value == ele.defaultValue) { ele.style = "color:#333"; ele.value = ''; } else { ele.style = "color:#333"; } } function fn_blur(ele) { var reg = /^[s]*$/; if (reg.test(ele.value) || ele.value == ele.defaultValue) { ele.style = "color:#ccc"; ele.value = ele.defaultValue; } else { ele.style = "color:#333"; } } $(function () { $('.lik_input_number').live('keydown', function (e) { //控制第一个数字不能为0 if ($(this).val().length > 1 && $(this).val().slice(0, 1) == 0 && $(this).val().slice(1, 2) != '.') { $(this).val($(this).val().slice(1, $(this).val().length)); } //控制只能输入数字、小数点、负号 if ((e.keyCode < 48 || (e.keyCode > 57 && e.keyCode < 96) || (e.keyCode > 105 && e.keyCode < 109) || (e.keyCode > 110 && e.keyCode < 189) || e.keyCode > 190) && e.keyCode != 8) { return false; } }); $('.lik_input_number').live('keyup', function (e) { //控制第一个数字不能为0 if ($(this).val().length > 1 && $(this).val().slice(0, 1) == 0 && $(this).val().slice(1, 2) != '.') { $(this).val($(this).val().slice(1, $(this).val().length)); } //控制只能输入数字、小数点、负号 if ((e.keyCode < 48 || (e.keyCode > 57 && e.keyCode < 96) || (e.keyCode > 105 && e.keyCode < 109) || (e.keyCode > 110 && e.keyCode < 189) || e.keyCode > 190) && e.keyCode != 8) { return false; } }); }); </script> </html>
author:Lik
Endeavoring to powerless, struggling to move yourself.
Endeavoring to powerless, struggling to move yourself.