Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 05.12.2017, 13:22
Аспирант
Отправить личное сообщение для maksqwerty Посмотреть профиль Найти все сообщения от maksqwerty
 
Регистрация: 03.11.2017
Сообщений: 58

списки в динамических таблицах
Ранее у меня были вопросы по ajax https://javascript.ru/forum/ajax/715...taet-post.html
Так как этот вопрос решился, возникли новые.
У меня в динамической таблице есть 2 списка.
При клике в таблицу добавляются новые поля , как и эти два списка.
Если в первом поле таблицы у элементов
id = "test1"

То в следующем поле
id = "test2"

Далее
id = "test3"
, и так далее.
Изменяется только ИД, класс тот же.
Когда добавил ajax запрос, всё работает нормально,
но вот когда добавляю новые поля в таблицу, то у списков там "стандартное значение"
И когда я выбираю нужное значение в новосозданном списке, то значения меняются и в других, связанных с этим списками.
Что нужно?
Что бы у новосозданных списках значение было такое же, как у предыдущего списка (если у списка с
id = "spisok1"
, то у списка с
id = "spisok2"
было такое же значение)
Это я попытался сделать так (через общий класс)
$(function () {
    var select = $('select.fertig');
    select.on('change', function () {
        select.not(this).val(this.value);
    });
})

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

Последний раз редактировалось maksqwerty, 05.12.2017 в 13:38.
Ответить с цитированием
  #2 (permalink)  
Старый 05.12.2017, 14:00
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

maksqwerty,
$(function () {
    var table = $('table');
    table.on('change', 'select.fertig', function () {
        $('select.fertig').not(this).val(this.value);
    });
})
Ответить с цитированием
  #3 (permalink)  
Старый 05.12.2017, 14:37
Аспирант
Отправить личное сообщение для maksqwerty Посмотреть профиль Найти все сообщения от maksqwerty
 
Регистрация: 03.11.2017
Сообщений: 58

Работает, и это уже хорошо, но работает не совсем так, как нужно
оно меняет значение, только когда я уже добавил новые поля,
а нужно, что бы как только я добавил поле, а значение списка уже было изменено на нужное
(тут наверное нужно присвоить event пока не существующим элементам, но как это сделать, я не знаю)
А ещё, вопрос: почему нужно прописывать table, разве без этого скрипт не видит нужных элементов?
Ответить с цитированием
  #4 (permalink)  
Старый 05.12.2017, 15:03
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

maksqwerty,
скрипты не телепаты, они не знают что вы захотите добавить, но есть делегирование
родитель следит за изменениями внутри себя.
строка 3 это "делегирование" в jquery.
Сообщение от maksqwerty
что бы как только я добавил поле, а значение списка уже было изменено на нужное
- это не понимаю, при создании селекта установите нужное вам значение, или после создания возможно так
$('select.fertig:first').trigger('change')
Ответить с цитированием
  #5 (permalink)  
Старый 05.12.2017, 15:19
Аспирант
Отправить личное сообщение для maksqwerty Посмотреть профиль Найти все сообщения от maksqwerty
 
Регистрация: 03.11.2017
Сообщений: 58

у меня значения селекта приходят с бд
как бы это сказать, мне нужно, что бы скрипт смотрел, какое значение у первого элемента, и менял значение списков, которые будут создаваться, на нужное, и при этом удалял другие варианты.
Спасибо за делегирование, буду вкуривать.
Эта строка, что вы написали, это пример делегации?
Ответить с цитированием
  #6 (permalink)  
Старый 05.12.2017, 15:24
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

maksqwerty,
ответ написан ранее
Ответить с цитированием
  #7 (permalink)  
Старый 05.12.2017, 15:27
Аспирант
Отправить личное сообщение для maksqwerty Посмотреть профиль Найти все сообщения от maksqwerty
 
Регистрация: 03.11.2017
Сообщений: 58

Окей, куда тогда мне втыкнуть строчку с делегацией в выше написаный вами скрипт, шобыработало?
Ответить с цитированием
  #8 (permalink)  
Старый 05.12.2017, 15:31
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Сообщение от maksqwerty
Окей, куда тогда мне втыкнуть строчку с делегацией в выше написаный вами скрипт, шобыработало?
не понимаю, о чём вы
Ответить с цитированием
  #9 (permalink)  
Старый 05.12.2017, 15:41
Аспирант
Отправить личное сообщение для maksqwerty Посмотреть профиль Найти все сообщения от maksqwerty
 
Регистрация: 03.11.2017
Сообщений: 58

Ну как сделать этот скрипт с делегированием,
Цитата:
что бы как только я добавил поле, а значение списка уже было изменено на нужное
Цитата:
- это не понимаю, при создании селекта установите нужное вам значение, или после создания возможно так
$('select.fertig:first').trigger('change')
Цитата:
$(function () {
var table = $('table');
table.on('change', 'select.fertig', function () {
$('select.fertig').not(this).val(this.value);
});
})
Ответить с цитированием
  #10 (permalink)  
Старый 05.12.2017, 15:43
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

maksqwerty,
где код создания нового селекта?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
выбор значений option равных переменным php, linkedselect, динамические списки mightybat Элементы интерфейса 2 19.10.2017 17:47
Зависимые списки! DSHA Элементы интерфейса 12 27.06.2012 12:27
взаимосвязанные выпадающие списки xDMK Серверные языки и технологии 37 11.11.2010 16:12
Установить selected в динамических списках при загрузке страницы FlintOFF jQuery 2 12.03.2010 10:42
Выпадающие списки - динамика Страдающий AJAX и COMET 7 11.09.2009 18:25