Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Как запушить значения в select? (https://javascript.ru/forum/dom-window/69010-kak-zapushit-znacheniya-v-select.html)

laimas 24.05.2017 14:11

Цитата:

Сообщение от ksa
Заменить на

<input type="text" id="shir" value="1000"> - выбросить "на", хватит и output. :) input type="range" такое же равноценное поле формы, которое с успехом может обмениваться выбором пользователя.

INSIDER73 24.05.2017 15:23

но мне к сожалению нужно сделать именно выпадающим списком,а вот такой вопрос,если у меня много селектов и у каждого свой min и max будт то как сделать?ведь скрипт сработает только для первого id ,а если задать классами то у всех будет одинаково все

рони 24.05.2017 15:50

INSIDER73,
Цитата:

Сообщение от INSIDER73
если задать классами то у всех будет одинаково все

не будет.
<div class="item">
<div class="q1">{{::min}}</div>
<div class="q2">{{::max}}</div>
<select class="minim" ></select>
</div>

$(function() {
    $(".item").each(function(indx, el){
          //$(".minim", el) ...
          });
});

j0hnik 24.05.2017 16:08

Цитата:

Сообщение от ksa (Сообщение 453278)
Заменить на

$('#shirR').on('input', function() {
	$('#shir').val(this.value);
});

Хорошее замечание, одобряю!

INSIDER73 24.05.2017 16:12

Цитата:

Сообщение от рони (Сообщение 453284)
INSIDER73,

не будет.
<div class="item">
<div class="q1">{{::min}}</div>
<div class="q2">{{::max}}</div>
<select class="minim" ></select>
</div>

$(function() {
    $(".item").each(function(indx, el){
          //$(".minim", el) ...
          });
});

Не совсем понял как скрипт будет выглядеть?
Так?
$(function() {
    $(".item").each(function(indx, el){
               var min = $(".q1").text();
                var max = $(".q2").text();
                min1 = parseInt(min, 10);
                max1 = parseInt(max, 10);
                for (var i = min1; i < max1; i += 10000)

                { $(".minim").append($('<option value="' + i + '">' + i + '</option>')) }
          });
});

j0hnik 24.05.2017 16:14

Цитата:

Сообщение от laimas (Сообщение 453279)
<input type="text" id="shir" value="1000"> - выбросить "на", хватит и output. :) input type="range" такое же равноценное поле формы, которое с успехом может обмениваться выбором пользователя.

с таким диапазоном я бы оставил оба. попробуй рейнджом попади в 3333 например!

laimas 24.05.2017 16:28

Цитата:

Сообщение от j0hnik
попробуй рейнджом попади в 3333 например

Для этого существует параметр step, значением которого можно управлять. По данному вопросу (управление шагом ползунка) и на форуме предостаточно написано.

рони 24.05.2017 16:32

Цитата:

Сообщение от INSIDER73
как скрипт будет выглядеть?
Так?

да, только дополните селекторы согласно примеру.

j0hnik 24.05.2017 16:32

Цитата:

Сообщение от INSIDER73 (Сообщение 453291)
Не совсем понял как скрипт будет выглядеть?
Так?
$(function() {
    $(".item").each(function(indx, el){
               var min = $(".q1").text();
                var max = $(".q2").text();
                min1 = parseInt(min, 10);
                max1 = parseInt(max, 10);
                for (var i = min1; i < max1; i += 10000)

                { $(".minim").append($('<option value="' + i + '">' + i + '</option>')) }
          });
});

$(function() {
    $(".item").each(function(indx, el){
               var min = $(this).children(".q1").text();
                var max = $(this).children(".q2").text();
                min1 = parseInt(min, 10);
                max1 = parseInt(max, 10);
                for (var i = min1; i < max1; i += 10000)

                { $(this).children(".minim").append($('<option value="' + i + '">' + i + '</option>')) }
          });
});

примерно так.

j0hnik 24.05.2017 16:35

Цитата:

Сообщение от laimas (Сообщение 453294)
Для этого существует параметр step, значением которого можно управлять. По данному вопросу (управление шагом ползунка) и на форуме предостаточно написано.

в данном случае step="1".


Часовой пояс GMT +3, время: 02:01.