2013-08-05 2 views
0

Fiddle hereClone и динамически устанавливать значение ввода имени

Это представляется довольно сложным, поэтому я стараюсь быть как можно более общим. Пожалуйста, взгляните на скрипку, чтобы сделать из нее больше смысла.

Общая идея состоит в том, чтобы установить атрибут имени текстового ввода в значение предыдущего выбранного параметра раскрывающегося списка. Он работает достаточно хорошо. Проблема начинается, когда вы добавляете фильтр, он клонирует ввод текста и использует одно и то же значение атрибута имени. Я передаю данные как json, а атрибут name текстового ввода устанавливает «ключ» пары «ключ/значение». Это приводит к представлению двух параметров, которые имеют один и тот же «ключ». Я могу только обновить атрибут имени ввода текста в событии изменения. Причина ниже.

$('.js-selectblock > .js-select:first').clone().appendTo('.js-selectblock'); 

Я пробовал некоторые вещи, как .clone(false).find('input[type="text"]).attr('name','FOO').appendTo('.js-selectblock')

но клонирует только ввод текста и у меня нет возможности узнать, что установить значение имени в. Код отключает ранее выбранные значения в раскрывающемся списке, что исключает возможность выбора одного и того же значения несколько раз, мне нужно выяснить способ динамически установить атрибут имени ввода текста в соответствии с выбранным значением из раскрывающегося списка ,

tl; dr - нужна лучшая процедура для динамического добавления поисковых фильтров в зависимости от количества опций выбора списка. Атрибут имени клонированного текстового ввода должен соответствовать значению выбранного значения выбранного списка избранных сестер.

ответ

1

Вы должны сделать это таким образом:

$('.js-selectblock > .js-select:first').clone().appendTo('.js-selectblock').find('input[type="text"]').attr('name','foo'); 

Updated Fiddle

Вы должны использовать appendTo() первый перед использованием find().

find() возвращает только выбранный элемент, который является текстовым полем, поэтому будет добавлено только текстовое поле.

+0

Отлично, спасибо. –

+0

Рад помочь !! знак равно –

Смежные вопросы