Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Выбор элементов из <select> (https://javascript.ru/forum/misc/15877-vybor-ehlementov-iz-select.html)

mgukov 17.03.2011 15:10

Выбор элементов из <select>
 
Как получить в javascript список выделенных элементов из
<select multiple="multiple">
Желательно получить список элементов HTMLOptionElement, ну или хотя бы значения value.

рони 17.03.2011 15:49

mgukov,
:-/
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
	<title>blank</title>
<script type="text/javascript">
function multiple_selected(a) {
    a = a.options;
    for (var c = [], b = 0; b < a.length; b++)
    a[b].selected && c.push(a[b].value);
    //a[b].selected && c.push(a[b]);
    return c;
};
</script>
</head>
<body>
	<select id="select1" multiple="multiple" size="5" onclick="alert(multiple_selected(this));">
		<option value="1">1</option>
		<option value="2">2</option>
		<option value="3">3</option>
		<option value="4">4</option>
		<option value="5">5</option>
	</select>

</body>
</html>

mgukov 17.03.2011 16:10

Так не работает
var childs = dom.by_id("FieldList").options,
options = [];
for (var i = 0; i < childs.length; ++i) {
      if (childs[i].getAttribute("selected")) options.push(childs[i]);
}

а так
var childs = dom.by_id("FieldList").options,
options = [];
for (var i = 0; i < childs.length; ++i) {
      if (childs[i].selected) options.push(childs[i]);
}

работает )


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