【问题标题】:how to replace inital digits of ssn with '*' while using mask of jquery如何在使用jquery的掩码时用'*'替换ssn的初始数字
【发布时间】:2012-06-21 06:03:48
【问题描述】:

在使用 jquery 的掩码时如何用 '*' 替换 ssn 的初始数字

例如: 123-45-6789 将插入为 ***-**-6789 ,但是当我们获取值时,我们应该得到 123456789

【问题讨论】:

    标签: jquery html


    【解决方案1】:

    给定 HTML 如下:

    <form id="ssn_form">
        <input name="ssn" id="ssn" type="text">
        <button id="submit">Submit</button>
    </form>​
    

    您可以将 SSN 存储在模糊的数据属性中并屏蔽该值。然后在提交表单时,您可以在提交表单之前将值重新填充到输入中:

    var retrieveValue = function(ev){
            var $this = $(this),
                val = $this.data('value');
    
            if (val) {
                $this.val(val);
            }
        },
        hideValue = function(ev){
            var $this = $(this);
    
            $this.data('value', $this.val());
            $this.val($this.val().replace(/^\d{5}/, '*****'));
        };
    
    $('#ssn').focus(retrieveValue);
    
    $('#ssn').blur(hideValue);
    
    $('#ssn_form').submit(function(ev){
        ev.preventDefault();
        retrieveValue.call($('#ssn')[0], ev);
        $(this).submit();
    });
    

    See demo

    【讨论】:

    • 提交函数会导致递归循环。相反,只需添加它就可以解决问题 $('#ssn_form').submit(function(ev){ retrieveValue.call($('#ssn')[0], ev); });
    【解决方案2】:

    没有任何代码供应,我认为这是你可以尝试的最好的方法:)

    输入 - 123-45-6789

    输出-***-**-6789

    检查这个--

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <script>
    function mask(f){
    tel='';
    var val =f.value.split('');
    for(var i=0;i<val.length;i++){
    if(i<3){val[i]='*'}
    if(i<6 && i>3 ){val[i]='*'}
    tel=tel+val[i]
    }
    f.value=tel;
    }
    </script>
    </head>
    <body>
    <form>
    <input name="phone" type="text" onblur="mask(this)">
    </form>
    </body>
    </html> 
    

    【讨论】:

    • 但是提交后我们会失去真正的价值权利所以如何防止呢?
    • @Sanshayan 您可以随时将值存储在另一个变量中
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-03
    • 2018-04-10
    • 2015-11-03
    • 2019-02-06
    相关资源
    最近更新 更多