Включение функции по клику - PullRequest
       30

Включение функции по клику

0 голосов
/ 15 августа 2011

У меня есть функция addBanner(), показанная ниже, которая вызывается каждый раз, когда я нажимаю кнопку addBanner. Это добавляет поле ввода и запускает скрипт jQuery с автоматическим предложением ausu .

Когда я нажимаю кнопку addBanner(), я получаю поле ввода, и автоматическое предложение работает нормально. Предположим, что я нажимаю кнопку addBanner() еще раз, она добавляет еще одно пустое поле ввода, и автоматическое предложение тоже отлично подходит для этого, поскольку функция автоматического предложения срабатывает каждый раз, когда я нажимаю addBanner Функция. Но если я хочу отредактировать первое поле ввода, которое я добавил, возникает конфликт. Подскажите, пожалуйста, как вернуть элемент управления в первое поле ввода.

var bnrc = 1;
var bnrl = 5;
function addBanner(divName){
     if (bnrc == bnrl)  {
          alert("You have reached the limit of adding " + bnrc + " Banner companies.");
     }
     else {
          var newdiv = document.createElement('div');
            newdiv.className = "banner_sugg";
          newdiv.innerHTML = (bnrc + 1) + ". <input type='text' value='' name='banner[]' id='banner" + (bnrc + 1) + "' autocomplete='off' /> <input type='hidden' value='' name='bannerID[]' id='bannerID" + (bnrc + 1) + "' autocomplete='off' />";
          document.getElementById(divName).appendChild(newdiv);
          bnrc++;
     }

    $.fn.autosugguest({  
           className: 'banner_sugg',
          methodType: 'POST',
            minChars: 1,
              rtnIDs: true,
            dataFile: 'e_data.php'
    });
}

1 Ответ

0 голосов
/ 25 августа 2011

Вы произносили по буквам предложение нарочно неправильно?Ниже я правильно произношу это слово, поэтому вам может потребоваться изменить его.

В настоящее время вы (повторно) вызываете $ .fn.autosuggest ({}) каждый раз, когда добавляете новый элемент, что может нарушитьпредыдущие элементы.

Попробуйте:

$(newDiv).autosuggest({})

Таким образом, он добавляет только функцию автоматического увеличения в новый div.И вы должны переместить приведенный выше код в раздел, где вы создаете newDiv, так как он даже вызывается по ошибке.

...