У меня есть формы с вводом «datapicker» .... и это раздражает, что я не вижу ошибок ввода, потому что входы имеют атрибут «только для чтения».
Итак, у меня есть этот код:
$('p.send-app-btn input[type="submit"]').on('click', function(){
$('input').each(function(){
if ( $(this).is('[readonly]') && $(this).prop('required') && !$(this).val()) {
$(this).removeAttr('readonly');
if($(this).is(':focus') && $(this).hasClass('hasDatepicker')){
setTimeout(function () {
$(this).attr('readonly','readonly');
}, 1500);
}
}
})
});
и он работает хорошо, потому что он удаляет атрибут «только для чтения» из $(this)
ввода и отображается ошибка ввода.Но мне бы хотелось, чтобы через 1,5 с (после устранения ошибки) сфокусированный ввод снова был «только для чтения».
Но эта часть кода не работает, потому что я не могу поймать $(this)
- как можноЯ делаю это по-другому?
if($(this).is(':focus') && $(this).hasClass('hasDatepicker')){
setTimeout(function () {
$(this).attr('readonly','readonly');
}, 1500);
}
Надеюсь, это понятно.:)