ホームページ  >  記事  >  ウェブフロントエンド  >  数値入力ボックスのH5処理例

数値入力ボックスのH5処理例

零下一度
零下一度オリジナル
2017-06-26 13:29:291389ブラウズ

最近の H5 開発では、金額入力ボックスが使用されましたが、カスタマイズされた金額キーボードがなかったため、システムの数字キーボードを呼び出すために type="number" が使用されました。

要件により、金額は小数点以下2桁までしか入力できません。

そこで、数字キーボードについて調べてみました。ユーザーが数字以外を入力すると、取得される値は空になりますが、入力ボックスにはユーザーが入力した内容が表示されます。

例: ユーザーが a を入力すると、チャンネルの値は空ですが、入力ボックスには a が表示されます。特殊な場合 (ユーザーが 2. を入力すると、取得される値は 2 となり、入力ボックスには 2 が表示されます)。

<!DOCTYPE html><html><head><title>demo5</title><meta charset="utf-8"><meta name="apple-mobile-web-app-capable" content="yes" /><meta name="viewport"content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" /><style type="text/css"></style></head><!-- 禁用复制 ,除去一些不必要的因素 --><body onpaste="return false"><div><input type=&#39;number&#39; id = &#39;number&#39;></div></body><script type="text/javascript">var me = window;
    (function init(){
        me.number = getId('number');
        me.n = '';
        initEvent();        function initEvent(){
            me.number.addEventListener('keyup', number, false);
        }function getId(id){return document.getElementById(id);
        }function number(){//金额,            console.log(this.value);if(this.value == ''){//校验,用户输入后,输入框的值是否为数字,当不为数字时,取到的为空this.value='';this.value = me.n;return}if(!/^\d{0,9}\.{0,1}(\d{1,2})?$/.test(this.value)){//校验不超过两位小数this.value = me.n;
            }if(window.event.keyCode != 8){if(this.value%1==0 && me.n==this.value){//当用户按下非删除键时,新值和旧值相同,旧值为整数return}if(me.n.indexOf(".")>-1 && me.n==this.value){//当用户按下非删除键时,新值和旧值相同,旧值为小数this.value='';this.value = me.n;return}
            }else{if(me.n.indexOf(".")>-1 && this.value.indexOf(".")<0){//当按下删除时,删掉小数点时                    me.n = this.value;return}
            }
            me.n = this.valueif(me.n.indexOf(".")>0){this.value = me.n;
            }
        }
    }())</script></html>
試してみてください。これにより、ユーザーの入力を制限できます

以上が数値入力ボックスのH5処理例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。