У меня есть поле формы, которое я хотел бы немного сделать, прежде чем пользователь представит форму. В частности, это поле местоположения, и мне нужно проверить, добавили ли они аббревиатуру состояния. Если нет, я добавляю его.
Я наблюдаю за blur(), поэтому я могу видеть, когда пользователь вставлял вкладку или выходил из поля:
$('#views-exposed-form-libraries-map-page-1 .form-item-field-geofield-distance-origin input').blur(function(){
// do stuff
});
"Это отлично работает, когда пользователь нажимает кнопку отправки или вкладки вне ввода. Однако, когда пользователь нажимает "вводить" или "возвращать", чтобы отправить форму, функция не запускается - я предполагаю, что нет события размытия.
Есть ли другой способ зацепить входное значение и отредактировать его, когда пользователь нажимает "Enter" или "return"?
также установите .submit
/вместо этого, это будет .submit
до подачи фактической формы, и вы можете отменить отправку, если это необходимо
$("#myForm").submit(function(e){
//check/do stuff here before submit
//use e.preventDefault() or return false to stop submission if needed.
});
Вы можете создать .submit()
который запускает .blur()
для сфокусированного элемента:
$('form').submit(function(){
$(':focus').trigger('blur');
})