#jquery #select #dropdown
#jquery #выберите #выпадающий список
Вопрос:
У меня есть selectfield с параметрами jquery в течение многих лет.
$(document).ready(function() {
var currentTime = new Date();
var thisYear = currentTime.getFullYear();
var startYear = 1960;
var x;
for (x = thisYear; x >= startYear; x--) {
$("#property_build").append("<option value='" x "'>" x "</option>")
};
});
Выбор этого работает нормально, но я не знаю, как сохранить это в БД. когда я пытаюсь сохранить, опция не выбрана.
я пробовал что-то вроде этого
$('#property_build').on('change', function(e) {
var optionSelected = $("option:selected");
var valueSelected = this.value;
$('#property_build option:selected').val(valueSelected)
});
но это, очевидно, не работает. Любая помощь приветствуется!
Комментарии:
1. Вы просто спрашиваете, как получить значение элемента формы в jQuery? Или что-то еще? Мне непонятно, что вы подразумеваете под «привязкой и сохранением» в этом случае.
2. я хочу получить выбранный параметр, чтобы я мог сохранить его в БД. теперь, когда я пытаюсь сохранить, опция no сохраняется. (я отредактировал свой вопрос)
Ответ №1:
Вы, кажется, слишком много об этом думаете. Чтобы получить выбранное значение (или массив значений для множественного выбора) в jQuery, просто используйте val()
на <select>
элементе:
let selectedValue = $('#property_build').val();
Комментарии:
1. как мне снова подключить его к selectfield? поэтому я могу сохранить его в БД.
2. @missbluebell: Неясно, что вы подразумеваете под «подключением этого снова». Также не ясно, как все это относится к базе данных. Пожалуйста, уточните.
3. хорошо. итак, у меня есть поле выбора, в котором параметры расширяются с помощью jquery. Однако, когда я хочу сохранить новый выбранный параметр, он не сохраняется в БД. я провел небольшой тест, и поле параметров html сохраняется. только не расширенные поля параметров jquery. смотрите Мой codepen в качестве примера codepen.io/ariellbell/pen/xezZzp Поэтому я ищу способ получить также расширенные поля параметров jquery для сохранения в базе данных.
4. @missbluebell: В настоящее время ничто не мешает этому произойти. Посмотрите обновленную версию вашего собственного кода: codepen.io/anon/pen/BEVKNo Единственное изменение заключается в том, что я добавил
change
обработчик к<select>
элементу и вывел значение. Выберите любое значение, и вы увидите, что оно записано. Какие бы проблемы у вас ни возникали при сохранении данных в базе данных, проблема не в коде, который вы показываете, или в вопросе, который вы задаете. Эта строка кода — это именно то, как вы получаете значение из<select>
элемента в jQuery.5. я понимаю вашу точку зрения. сначала я подумал, что мой код не завершен. но после вашего ответа необходимо провести дополнительные исследования, чтобы понять, как работает symfony framework. по-видимому, он видит эти дополнительные значения jquery как пустые или около того. Если вы не знакомы с этой структурой, ответ, который я ищу, не улучшен в моем первоначальном вопросе. Приятно знать, что мой код jquery сам по себе работает нормально. он просто не готов к symfony.