成人精品一区二区三区中文字幕-成人精品一区二区三区-成人精品一级毛片-成人精品亚洲-日本在线视频一区二区-日本在线视频免费

導航首頁 ? 技術教程 ? jQuery控制文本框只能輸入數字和字母及使用方法
全站頭部文字 我要出現在這里
jQuery控制文本框只能輸入數字和字母及使用方法 741 2024-03-02   

在公司開發WinForm項目時,發現公司自主研發的textbox控件非常強大,可以實現"只能輸入數字"、"只能輸入字母"和"只能輸入數字和字母"的三種輸入限制,這樣就可以精確控制用戶輸入的內容范圍,讓"用戶永遠沒有辦法輸入限定的內容范圍之外的其他內容",也就是"用戶即使想犯錯誤也沒有機會",這種限制控件輸入的方式給了我很大的啟發,如果在web項目中也能做到這樣的精確控制,那么就可以避免因為一些非法輸入而造成系統出錯,既然WinForm里面可以實現這樣的控件,那么web項目里面也應該有辦法去實現類似這樣的控件或者能夠做到類似的效果,經過自己的一番研究和查找資料,終于做到了類似的效果,針對"只能輸入數字"、"只能輸入字母"和"只能輸入數字和字母"的三種輸入限制,我封裝成onlyNum(),onlyAlpha()和onlyNumAlpha()3個Jquery擴展方法,方便復用,由于里面一些JS代碼涉及到了"禁用輸入法,獲取剪切板的內容",而"禁用輸入法,獲取剪切板的內容"只能在IE瀏覽器下才有效,對于別的瀏覽器是無效的,因此這三個方法只適合在IE瀏覽器下使用才有效,三個方法的代碼如下

一、限制只能輸入數字

// ----------------------------------------------------------------------
 // <summary>
 // 限制只能輸入數字
 // </summary>
 // ----------------------------------------------------------------------
 $.fn.onlyNum = function () {
   $(this).keypress(function (event) {
     var eventObj = event || e;
     var keyCode = eventObj.keyCode || eventObj.which;
     if ((keyCode >= && keyCode <= ))
       return true;
     else
       return false;
   }).focus(function () {
   //禁用輸入法
     this.style.imeMode = 'disabled';
   }).bind("paste", function () {
   //獲取剪切板的內容
     var clipboard = window.clipboardData.getData("Text");
     if (/^d+$/.test(clipboard))
       return true;
     else
       return false;
   });
 }; 

二、限制只能輸入字母

// ----------------------------------------------------------------------
 // <summary>
 // 限制只能輸入字母
 // </summary>
 // ----------------------------------------------------------------------
 $.fn.onlyAlpha = function () {
   $(this).keypress(function (event) {
     var eventObj = event || e;
     var keyCode = eventObj.keyCode || eventObj.which;
     if ((keyCode >= && keyCode <= ) || (keyCode >= && keyCode <= ))
       return true;
     else
       return false;
   }).focus(function () {
     this.style.imeMode = 'disabled';
   }).bind("paste", function () {
     var clipboard = window.clipboardData.getData("Text");
     if (/^[a-zA-Z]+$/.test(clipboard))
       return true;
     else
       return false;
   });
 }; 

三、 限制只能輸入數字和字母

 // ----------------------------------------------------------------------
 // <summary>
 // 限制只能輸入數字和字母
 // </summary>
 // ----------------------------------------------------------------------
 $.fn.onlyNumAlpha = function () {
   $(this).keypress(function (event) {
     var eventObj = event || e;
     var keyCode = eventObj.keyCode || eventObj.which;
     if ((keyCode >= && keyCode <= ) || (keyCode >= && keyCode <= ) || (keyCode >= && keyCode <= ))
       return true;
     else
       return false;
   }).focus(function () {
     this.style.imeMode = 'disabled';
   }).bind("paste", function () {
     var clipboard = window.clipboardData.getData("Text");
     if (/^(d|[a-zA-Z])+$/.test(clipboard))
       return true;
     else
       return false;
   });
 }; 

使用方法:首先在畫面加載完成之后編寫如下的JS腳本

 $(function () {
   // 限制使用了onlyNum類樣式的控件只能輸入數字
   $(".onlyNum").onlyNum();
   //限制使用了onlyAlpha類樣式的控件只能輸入字母
   $(".onlyAlpha").onlyAlpha();
   // 限制使用了onlyNumAlpha類樣式的控件只能輸入數字和字母
   $(".onlyNumAlpha").onlyNumAlpha();
  });

對需要做輸入控制的控件設置class樣式

 <ul>
     <li>只能輸入數字:<input type="text" class="onlyNum" /></li>
     <li>只能輸入字母:<input type="text" class="onlyAlpha" /></li>
     <li>只能輸入數字和字母:<input type="text" class="onlyNumAlpha" /></li>
 </ul> 

這樣畫面上凡是設置了class="onlyNum"的控件就只能輸入數字,設置了class="onlyAlpha"的控件只能輸入字母,設置了class="onlyNumAlpha"的控件只能輸入數字和字母,通過這種方式就可以限制了用戶的輸入范圍,避免用戶進行一些非法的輸入。

以上所述是小編給大家介紹的jQuery控制文本框只能輸入數字和字母及使用方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對綠夏網網站的支持!



主站蜘蛛池模板: 斌子| 女友的男朋友| 布拉芙大尺度未删减版| 女同版痴汉电车| 王艺潼| 即便如此我依然爱着我的老婆| 陈澎| 猎奇头像| 大秦帝国第一部免费版| 远景山谷1981原版| 黑色的人生中文翻译版| 进击的巨人最终篇| 陈建斌电影| 杨子纯| 炊事班的故事演员表| 05s502图集| karina hart| 林书宇| 出彩中国人撒贝宁精忠报国15分钟| 飞鸟里伊奈| 仲裁申请书模板及范文| 卢昱晓电视剧| 北京 北京 汪峰歌曲| 美女比基尼跳舞| 新一剪梅| 尤勇智的个人资料简介| shenin| 麻辣烫热量| 飞越情海| 二年级上册音乐教案全册| 演员李明个人资料| 秀人网 官网门户免费| 唐砖演员表| 嗯啊不要啊啊| 远古的传说| 浙江卫视节目在线观看直播| 《魔鬼天使》电影| 树屋轻调| 北京卫视节目单全天| 豪勇七蛟龙 电影| 远古的传说|

!!!站長長期在線接!!!

網站、小程序:定制開發/二次開發/仿制開發等

各種疑難雜癥解決/定制接口/定制采集等

站長微信:lxwl520520

站長QQ:1737366103