Пытаюсь написать скрипт, который будет отображать количество выбранных элементов мультиселекта, т.е. выбрал элемент, на странице показало "Выбрано: 2" и т.д. Через setInterval не получилось сделать.
Вот сама функция:
<script>
function getSelectedIndexes(oListbox) {
var arrIndexes = new Array;
for (var i = 0; i < oListbox.options.length; i++) {
if (oListbox.options[i].selected) {
arrIndexes.push(i);
}
}
return arrIndexes;
};
var objSel = document.getElementById('toppings');
document.getElementById('count').innerHTML = 'Выбрано: ' + getSelectedIndexes(objSel);
</script>
Подскажите, как реализовать вышеописанную идею? (с js мало знаком, только основы)
Спустя 4 минуты, 8 секунд (3.10.2011 - 20:37) Winston написал(а):
Цитата (lastalert @ 3.10.2011 - 20:33) |
return arrIndexes; }; |
Зачем ; после закрывающей скобки ?
Спустя 28 минут, 1 секунда (3.10.2011 - 21:05) lastalert написал(а):
Winston, тчк зпт случайно по невнимательности там появилась.
За ссылку спасибо, но, похоже, это немного не то, что я спрашивал.
С подсчетом выбранных option-ов проблемы нет, работает все. Суть вопроса в том, как отображать количество выбранных элементов. Допустим выбрал в этом списке 3 пункта, в теге с определенным ID появилось "Выбрано 3", потом выбрал еще 2 элемента, в том же ID уже "Выбрано 5" и т.д. (без перезагрузки страницы)
За ссылку спасибо, но, похоже, это немного не то, что я спрашивал.
С подсчетом выбранных option-ов проблемы нет, работает все. Суть вопроса в том, как отображать количество выбранных элементов. Допустим выбрал в этом списке 3 пункта, в теге с определенным ID появилось "Выбрано 3", потом выбрал еще 2 элемента, в том же ID уже "Выбрано 5" и т.д. (без перезагрузки страницы)
Спустя 21 минута, 4 секунды (3.10.2011 - 21:26) Xes написал(а):
Затираешь innerHtml и воодишь новое значение
.innerHTML = '';
.innerHTML = 'Выбрано: ' + getSelectedIndexes(objSel);
По поводу того что такое getSelectedIndexes - тебе виднее если говоришь что все работает то ок.
Я те лишь алгоритм сказал.
.innerHTML = '';
.innerHTML = 'Выбрано: ' + getSelectedIndexes(objSel);
По поводу того что такое getSelectedIndexes - тебе виднее если говоришь что все работает то ок.
Я те лишь алгоритм сказал.
Спустя 10 минут, 40 секунд (3.10.2011 - 21:37) Winston написал(а):
Блин одни халявщики вокруг :)
Держи
Держи
Свернутый текст
<script type="text/javascript">
function foo(id)
{
var sel = document.getElementById(id);
var res = document.getElementById('res');
var count = 0;
for(var i = 0; i < sel.options.length; i++)
{
if(sel.options[i].selected)
{
count++
res.innerHTML = 'Выбрано: ' + count;
}
}
}
</script>
<select multiple id="sel" onchange="foo(this.id)">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
</select>
<div id="res">
</div>
Спустя 59 минут, 44 секунды (3.10.2011 - 22:37) lastalert написал(а):
Winston, спасибо за помощь
_____________
...think about your actions.