Задать вопрос
@alexei_2002

Почему не распознается переменная при ее подстановке в строку?

Пробовал несколько вариантов, во всех случаях возвращает undefined

i = 1;
tempvar_surname = $(`.c_ipt_surname${i}`).val();

tempvar_surname = $('.c_ipt_surname'+i).val();

tempvar_surname = $('.c_ipt_surname'+(i)).val();
  • Вопрос задан
  • 108 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 2
ZerdoX-x
@ZerdoX-x
Frontend developer influenced by web, a11y, crypto
Первый вариант правильный. Что именно у тебя возвращает undefined? Функция val()?

Попробуй задебажить это поэтапно:
  1. Создай константу в которой будет хранится строка с нужным тебе селектором:
    const selectorString = `.c_ipt_surname${i}`
    console.log({ selectorString })

  2. Получи DOM элемент:
    const surnameElement = $(selectorString)
    console.log({ surnameElement })

  3. Получи значение, которое ввёл юзер:
    const surname = surnameElement.val()
    console.log({ surname })


Последним пунктом я бы посоветовал выпилить jq и больше никогда им не пользоваться. Но этот пункт слишком opionated, я не стал его включать.
Ответ написан
@alexei_2002 Автор вопроса
Решение вопроса:
Необходимо было использовать id
tempvar_surname = $(`#ipt_surname${i}`).val();
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
div. Ставрополь
от 40 000 до 90 000 ₽
Wanted. Санкт-Петербург
До 220 000 ₽
18 дек. 2024, в 12:37
10000 руб./за проект
18 дек. 2024, в 12:22
5000 руб./за проект
18 дек. 2024, в 11:57
500 руб./в час