Chefranov
@Chefranov
Новичок

Как считать input и сопоставить значение с select?

При редактировании поста мне сервер отдает input (на серверную часть повлиять не могу). С помощью JS я преобразую input в select для удобства клиенту, чтобы клиент не вписывал данные ручками, а просто выбирал из списка (возможные значения всегда одинаковые, например, Item1, Item 2, Item 3). После сохранения это естественно сохраняется как будто записали в input.
Вопрос в следующем, как при последующем редактировании в select уже был выбран элемент который выбрал при создании поста? То есть по сути получается необходимо прочитать значение input потом преобразовать в select и проверить элемент на точное совпадение значения и сделать его selected.

input на select заменяю так
$('#ldF13').replaceWith('<select name="aemail"><option value="Item 1">Item 1</option><option value="Item 2">Item 2</option><option value="Item 3">Item 3</option></select>')
  • Вопрос задан
  • 172 просмотра
Решения вопроса 1
@Danilamasterr
Вот мой вариант:

const defaultOption = $('#ldF13').val()

$('#ldF13').replaceWith('<select name="aemail">')

const options = ['Item 1', 'Item 2', 'Item 3']

for (let i = 0; i < options.length; i++) {
  let selected = defaultOption === options[i] ? 'selected' : ' '
  $('select[name=aemail]').append('<option value="' + options[i] + '" ' + selected + '>' + options[i] + '</option>')
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы