0

在用户输入数据后,我有一个脚本可以成功隐藏除模糊的 9 位数字的最后四位以外的所有数字。我需要调整它以供第二次使用。我希望能够动态地将从一个表单输入的 9 位数字调用到另一个表单的新文本字段中(我可以做到这一点),但我希望在页面加载时立即隐藏前五位数字,而不是用户专注于该领域后,然后离开该领域。这样我们就可以在用户以第一种形式输入社交后,以第二种形式显示用户社交的最后四个。这是我当前的脚本:

jQuery(function ($) {
    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(function (idx, val) {
            var mask = val.match(/^(.*?)(d{4})$/);

            return (mask[1] ? mask[1].replace(/d/g, ‘ * ’) : ”) + (mask[2] ? mask[2] : ”)
        });
    };

    $(‘#field_a7afui’).focus(retrieveValue);

    $(‘#field_a7afui’).blur(hideValue);

    $(‘#form_hv3hcs’).submit(function (ev) {
        ev.preventDefault();
        retrieveValue.call($(‘#field_a7afui’)[0], ev);
        alert($(‘#field_a7afui’).val());
        hideValue.call($(‘#field_a7afui’)[0], ev);
    });
})();

这是一个 jfiddle:http: //jsfiddle.net/d5KaJ/53/

提前感谢您的帮助。

4

1 回答 1

2

在客户端的表单之间传输用户的 SSN 存在安全问题。您应该考虑将 SSN 存储在服务器上并让服务器返回类似*****1234加载到其他表单中的内容。

于 2013-08-19T15:25:17.903 回答