Добавление поля формы

Рейтинг: 0Ответов: 1Опубликовано: 12.11.2014

Добрый день!

Есть форма, где, помимо определенного количества полей, есть поля, которые динамически могут добавляться. Делается это таким способом:

$(document).ready(function() {
    var MaxInputs = 10;
    var Wrap = $("#Wrapper_add");
    var AddButton = $("#INeedMore");
    var x = Wrap.length;
    var FieldCount = 0;
    $(AddButton).click(function(e) //функция добавления нового поля
        {
            if (x <= MaxInputs) //проверяем на максимальное кол-во
            {
                FieldCount++;
                //добавляем поле
                $(Wrap).append('<input>тут эти самые поля</input>');
                x++; //приращение текстового поля
            }
            return false;
        });

    $("body").on("click", ".removeclass", function(e) { //удаление поля
        if (x > 1) {
            $(this).parent('div').remove(); //удалить блок с полем
            x--; //уменьшаем номер текстового поля
        }
        return false;
    })

});

И вот теперь два вопроса (которые, возможно, связаны друг с другом):
1. Почему к таким "динамическим" полям нельзя обратиться потом с другого JS-скрипта?
2. И почему-то при выполнении, помимо нужных полей, добавляются поля снизу html страницы?

В чем могут быть проблемы?

Заранее большое спасибо!

Ответы

▲ 1

Вообще вопрос решился следующим образом, причем довольно легко:

  1. Я код оформил в виде функции, а в html поля я вызываю onfocus="autocompl()", тем самым вызывается функция, и происходит действие.
  2. Там проблема была в невнимательности, я вызывал два скрипта и тем самым один выводил в нужном месте, а другой в ненужном. Никакой технической причины более не было.