利用ime-mode设置文本框只能输入正整数
html:
<input type="text" id="packageratio"style="ime-mode: disabled;"/>
js:
$("[id$=ratio]").keydown(function (e) { var code = parseInt(e.keyCode); if (code >= 96 && code <= 105 || code >= 48 && code <= 57 || code == 8 || code == 37 || code == 39) { //8 退格 37 左箭头 39 右箭头 return true; } else { return false; } }) //文本框输入事件,任何非正整数的输入都重置为1 $("[id$=ratio]").bind("input propertychange", function () { if ($(this).val() != '') { var re = /^[0-9]+$/; if (re.test($(this).val())) { if (isNaN(parseFloat($(this).val())) || parseFloat($(this).val()) <= 0) { $(this).val('1'); } else { if (parseFloat($(this).val()) > 9999999999) { $(this).val('9999999999'); } } } else { $(this).val($(this).val().replace(/[^0-9]/ig, "")); if ($(this).val() == '') { $(this).val('1'); } } } else { $(this).val('1'); } });
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步