Я хочу построить строку или 'url' из выбранных значений формы. Я не хочу обрабатывать форму в любом месте, ее просто соединить строку из набора параметров.JQuery .val() получает правильное значение, но не передает его переменной
У меня есть класс выбрать
<div id="colorselect">
<select class="selectpicker" data-size="5">
<option>red</option>
<option>blue</option>
</select>
</div>
по умолчанию является «красным», и когда я изменяю «синий» Я вижу, что изменения, введя в консоли ...
$("#colorselect.select option:selected").val();
который дает мне
"blue"
Я тогда установить .val() в качестве переменной
var urlColor = $("#colorselect.select option:selected").val();
and pass to a function
function urlGenerator(urlColor){
var url = 'http://localhost/pixacca/' + urlColor;
// Passes the url into the textarea
$("#output").val(url);
}
Когда я нажимаю кнопку, он возвращает красный, а не синий?
<a class="btn btn-lg btn-default" id="process" href="#" role="button">Generate</a>
<div class="output"></div>
$("#process").click(function() {
urlGenerator(urlColor)
});
Получите выбранное значение, когда это необходимо, вместо сохранения его в переменной. или добавьте слушателя изменений, чтобы установить значение выбранного элемента. – Braj
Когда вы запускаете код, который устанавливает переменную при загрузке, выбирается «красный». Вы не получаете значение * после * выбор был изменен. –
добавьте слушателя изменений, чтобы обновить значение глобальной переменной. 'var urlColor = 'синий'; // значение по умолчанию $ ('# colorselect.select'). change (function() {urlColor = $ ('# colorselect.select option: selected'). val();}); ' – Braj