Запускать событие щелчка, когда вы начинаете вводить последний элемент в поле формы (jQuery)?

#jquery

#jquery

Вопрос:

Я использую этот плагин jQuery, который добавляет поля формы каждый раз, когда вы нажимаете «добавить больше«, например:

Вот как выглядит форма:

введите описание изображения здесь

Поле пункта меню:

 <input tabindex="1" recname="itemName" type="text" id="itemName" name="itemName" placeholder="Menu Item" class="menu-item itemName">
  

Поле цены:

 <input type="text" tabindex="8" recname="itemGaylords" id="itemGaylords" name="itemGaylords" placeholder="Price" class="price numeric unitValue required">
  

Добавить еще ссылку:

 <a href="#" class="addMoreFields">Add more</a>
  

Я хотел бы вызвать щелчок по .addMoreFields ссылке, как только вы начнете вводить текст в поле последнего пункта меню.

Есть предложения по выполнению этого?

Ответ №1:

 $('.menuItem:last').focus(function(){
  $('.addMoreFields:last').trigger('click');
});
  

Лучше использовать….

 $('.menuItem:last').live('focus', function(){
  $('.addMoreFields:last').trigger('click');
});
  

Комментарии:

1. Странно, но когда вы помещаете курсор в последнее (вновь созданное поле), ничего не происходит. Первое поле по-прежнему интерпретируется как последнее (может быть, мне нужно что-то сделать с функцией bind или live ?

2. Я понял: $('.menu-item:last').live('focus', function() { $('.addMoreFields:last').trigger('click'); });