Два SELECT и список
Привет всем.
Нужна помощь Есть набор из двух селектов и небольшой массив данных со значениями из списков и результирующим значением Как при выборе двух значений селектов, сравнить их с массивом и записать в DIV значение из таблицы? <select id="" name="select1" class="select-1"> <option onclick="optioner(this)" value="20">20</option> <option onclick="optioner(this)" value="25">25</option> <option onclick="optioner(this)" value="30">30</option></select> <select id="" name="select2" class="select-2"> <option onclick="optioner(this)" value="1.3">1.3</option> <option onclick="optioner(this)" value="1.4">1.4</option> <option onclick="optioner(this)" value="1.5">1.5</option></select> <div id="values"></div> <script> data = { '1.3':{'20':'155'},{'25':'156'},{'30':'157'}, '1.4':{'20':'159'},{'25':'160'},{'30':'170'}, '1.5':{'20':'165'},{'25':'169'},{'30':'172'} } </script> |
ugator,
data неправильная и Пожалуйста, отформатируйте свой код! Для этого его можно заключить в специальные теги: js/css/html и т.п., например: [js] ... ваш код... [/js] О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting. |
ugator,
<!DOCTYPE HTML> <html> <head> <title>Untitled</title> <meta charset="utf-8"> </head> <body> <select id="" name="select1" class="select-1"> <option value="20">20</option> <option value="25">25</option> <option value="30">30</option></select> <select id="" name="select2" class="select-2"> <option value="1.3">1.3</option> <option value="1.4">1.4</option> <option value="1.5">1.5</option></select> <div id="values">155</div> <script> var data = { '1.3':{'20':'155','25':'156','30':'157'}, '1.4':{'20':'159','25':'160','30':'170'}, '1.5':{'20':'165','25':'169','30':'172'} }, sel = document.querySelectorAll('select'); [].forEach.call(sel, function(item) { item.addEventListener('change', function() { var div = document.getElementById('values'); div.innerHTML = data[sel[1].value][sel[0].value] }); }); </script> </body> </html> интересно откуда пошла традиция ставить клики на option последнее время? :-? |
Цитата:
|
А что вот это такое [].forEach - квадратные скобки? Это массив селектов или что такое? Никогда такого в скриптах не видел.
|
Спасибо за решение. Все работает.
|
Цитата:
|
Часовой пояс GMT +3, время: 02:23. |