Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.10.2012, 13:59
Интересующийся
Отправить личное сообщение для kvaleksandr Посмотреть профиль Найти все сообщения от kvaleksandr
 
Регистрация: 22.04.2011
Сообщений: 15

Выбор всех Select
Здравствуйте, подскажите как можно перебрать все селекты по очереди и взять из них активное значение.

div id="option-228" - этот и подобные изначально неизвестны
id у select - изначально неизвестно
name у select - изначально неизвестно

<form id="new" action="">
        <div id="option-228" class="option">
        <span class="required">*</span>
          <select class="sel_opt" id="228" name="option[228]">
            <option value=""> первый </option>
            <option value="19">второй</option>
        </select>
        </div>
		
        <br>
		<div id="option-217" class="option">
                    <span class="required">*</span>
                    <b>Select:</b><br>
          <select class="sel_opt" id="217" name="option[217]">
            <option value=""> Blue </option>
            <option value="4">Red </option>
            <option value="3">Green</option>
          </select>
        </div>
		
        <br>
         <div id="option-227" class="option">
                    <span class="required">*</span>
                    <b>Select:</b><br>
          <select class="sel_opt" id="227" name="option[227]">
            <option value="">Выбор 1</option>
            <option value="17">Выбор 2</option>
            <option value="18">Выбор 3</option>
         </select>		 
        </div>

</form>
Ответить с цитированием
  #2 (permalink)  
Старый 25.10.2012, 14:18
Аватар для lord2kim
Профессор
Отправить личное сообщение для lord2kim Посмотреть профиль Найти все сообщения от lord2kim
 
Регистрация: 03.05.2011
Сообщений: 848

kvaleksandr,
var sel = document.getElementById("new").getElementsByTagName("select"), sel_leng = sel.length, mas_sel = [];
for (i=0; i < sel_leng; i++) {
    mas_sel.push(sel[i].value);
}

или можно по классу...
Ответить с цитированием
  #3 (permalink)  
Старый 26.10.2012, 05:57
Интересующийся
Отправить личное сообщение для kvaleksandr Посмотреть профиль Найти все сообщения от kvaleksandr
 
Регистрация: 22.04.2011
Сообщений: 15

Пробую
$('select.sel_opt').bind('change', function() {

	var sel = document.getElementById("new").getElementsByTagName("select"), sel_leng = sel.length, mas_sel = [];

for (i=0; i < sel_leng; i++) {

    mas_sel.push(sel[i].value);

}
	alert(sel);
$('#new_price').text(sel);
});


через alert выдается такое вот, может я чего неправильно делаю? ощущение что в sel передается массив, только вот как его потом оттуда извлечь?

Ответить с цитированием
  #4 (permalink)  
Старый 26.10.2012, 06:52
Кандидат Javascript-наук
Отправить личное сообщение для Your Посмотреть профиль Найти все сообщения от Your
 
Регистрация: 03.10.2012
Сообщений: 147

У вас же кнопка отправить будет, зачем вы постоянно обращаетесь к заполнению массива, жесть.

Когда можно при отправки заполнить массив, проверив, что выбрана не пустота и радоваться.
Ответить с цитированием
  #5 (permalink)  
Старый 26.10.2012, 09:33
Интересующийся
Отправить личное сообщение для kvaleksandr Посмотреть профиль Найти все сообщения от kvaleksandr
 
Регистрация: 22.04.2011
Сообщений: 15

Сообщение от Your Посмотреть сообщение
У вас же кнопка отправить будет, зачем вы постоянно обращаетесь к заполнению массива, жесть.

Когда можно при отправки заполнить массив, проверив, что выбрана не пустота и радоваться.
при обработке селектов в

$('#new_price').text(sel);


должен помещаться результат обработки всех селектов.

Суть задачи такая. есть изначально неизвестное количество селектов, в каждом селекте хранится параметр с цифрой. Мне необходимо суммировать все селекты и вывести в отдельный див.
Ответить с цитированием
  #6 (permalink)  
Старый 26.10.2012, 09:49
Аватар для lord2kim
Профессор
Отправить личное сообщение для lord2kim Посмотреть профиль Найти все сообщения от lord2kim
 
Регистрация: 03.05.2011
Сообщений: 848

kvaleksandr, вы скажите почему выводите sel, а не mas_sel ? для чего по вашему в цикле массив собирается?)
Ответить с цитированием
  #7 (permalink)  
Старый 26.10.2012, 12:26
Интересующийся
Отправить личное сообщение для kvaleksandr Посмотреть профиль Найти все сообщения от kvaleksandr
 
Регистрация: 22.04.2011
Сообщений: 15

Сообщение от lord2kim Посмотреть сообщение
kvaleksandr, вы скажите почему выводите sel, а не mas_sel ? для чего по вашему в цикле массив собирается?)
спасибо за подсказку, очень давно с кодом дел не имел).
Ответить с цитированием
  #8 (permalink)  
Старый 26.10.2012, 14:52
Интересующийся
Отправить личное сообщение для kvaleksandr Посмотреть профиль Найти все сообщения от kvaleksandr
 
Регистрация: 22.04.2011
Сообщений: 15

Когда пытаюсь вытащить value из вашего примера, то все работает на отлично, но как пытаюсь вытащить текст, то значения выходят пустые.

var sel = document.getElementById("new").getElementsByTagName("select"), sel_leng = sel.length, mas_sel = [];

for (i=0; i < sel_leng; i++) {

    mas_sel.push(sel[i].Text);

}


перепробовал несколько вариантов, но значения кроме как из value прочитать не удается(
Ответить с цитированием
  #9 (permalink)  
Старый 26.10.2012, 14:57
Аватар для lord2kim
Профессор
Отправить личное сообщение для lord2kim Посмотреть профиль Найти все сообщения от lord2kim
 
Регистрация: 03.05.2011
Сообщений: 848

kvaleksandr, если память не изменяет, то не Text, а text
Ответить с цитированием
  #10 (permalink)  
Старый 26.10.2012, 16:05
Интересующийся
Отправить личное сообщение для kvaleksandr Посмотреть профиль Найти все сообщения от kvaleksandr
 
Регистрация: 22.04.2011
Сообщений: 15

Сообщение от lord2kim Посмотреть сообщение
kvaleksandr, если память не изменяет, то не Text, а text
да я уже и text и text() и всяко пробовал, пробовал даже в селект засовывать title и оттуда попытаться взять значения, но безрезультатно(
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выбор всех страниц кроме одной andrydesign jQuery 3 03.10.2012 12:10
select + выбор с отображением сразу it_tech Элементы интерфейса 3 26.06.2012 19:52
Установка кнопкой всех значений SELECT одинаково Лавсановые Волокна Элементы интерфейса 3 28.12.2010 13:28
выбор в SELECT Arfey Общие вопросы Javascript 2 03.09.2010 13:50
Передача всех Options из Select (не только выбранных) dm1tr1y Общие вопросы Javascript 6 23.03.2009 18:51