Я пытаюсь скрыть ssn или другую конфиденциальную информацию в текстовом поле с использованием событий JQuery.Событие Stop Blur при нажатии ссылки
$('#txtMasked').keyup(function (e) {
e.preventDefault();
var val = this.value.replace(/\D/g, '');
var newVal = '';
if (val.length > 4) {
this.value = val;
}
if ((val.length > 3) && (val.length < 6)) {
newVal += val.substr(0, 3) + '-';
val = val.substr(3);
}
if (val.length > 5) {
newVal += val.substr(0, 3) + '-';
newVal += val.substr(3, 2) + '-';
val = val.substr(5);
}
newVal += val;
this.value = newVal;
});
$('#lnk').click(function (e) {
if ($('#txtMasked').attr('type') === 'password') {
$('#txtMasked').attr('type', 'text');
$(this).text('Hide');
$(this).prop('title', 'Hide');
} else {
$('#txtMasked').attr('type', 'password');
$(this).text('Show');
$(this).prop('title', 'Show');
}
return false;
})
var show = function (ev) {
$('#txtMasked').attr('type', 'text');
$('#lnk').text('Hide');
$('#lnk').prop('title', 'Hide');
},
hide = function (ev) {
$('#txtMasked').attr('type', 'password');
$('#lnk').text('Show');
$('#lnk').prop('title', 'Show');
};
$('#txtMasked').focus(show);
$('#txtMasked').blur(hide);
Когда событие фокус срабатывает, текст разоблачают, и он может быть замаскирован назад либо вызывая размытие или ссылку событие.
Когда фокус активирован и нажимается ссылка, также срабатывает размытие. В результате, это смущает событие щелчка ссылки, поэтому текст никогда не маскируется.
Я ищу в Интернете, и я не могу найти способ остановить оба события от запуска в одно и то же время.
Я пробовал this, но это не сработало в моей ситуации.
Пожалуйста, кто-нибудь может помочь?
Спасибо за помощь
Это не сработало, то событие размытия должен быть остановлен, вызывая событие щелчка. – capiono
Хорошо, позвольте мне еще раз проверить – Dilip