Отображение нового элемента в массиве
Доброго времени суток!
Есть скрипт в котором есть выпадающий список, который берет данные с массива и есть текстовое поле с кнопкой, которые добавляют новые элементы в массив. Нужна помощь в следующем: как сделать так, что бы после добавления нового элемента, при вызове выпадающего списка, новый элемент отображался уже в списке. <html> <head> <title>TTL</title> <meta charset= "utf-8"> </head> <body> Твердость : <select id = 'Rock'> <script> var arr = new Array('TH - 415','TH - 465','TS - 275','TS - 260'); window.onload = function() // Функция выпадающего списка Твердость { var e = document.getElementById('Rock'); for (var i = 0; i < arr.length; i++) { var option = document.createElement('option'); option.innerHTML = arr[i]; e.appendChild(option); } } function button(){ //Функция добавления в массив Твердость var add=document.getElementById('text').value arr.push(add); } </script> Твердость <select id="Rock"</select> <!--Выпадающий список--> Добавить <input type='text' id='text'> <!-- Добавление элемента в массив--> <input type="button" onclick="button(); reload_()" value="+"/> </body> </html> |
Sashkouuu,
Пожалуйста, отформатируйте свой код! Для этого его можно заключить в специальные теги: js/css/html и т.п., например: [js] ... ваш код... [/js] О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting. |
Добавлять text.value сразу в select, а не в массив
|
Цитата:
|
Цитата:
var isUnique = function(nodeArray,text) { for (var i = 0; i < nodeArray.length; i++) { if ( nodeArray[i].textContent == text ) return false; } return true; } button.addEventListener('click',function(e){ var e = e || event; var op = sel.getElementsByTagName('option'); if (isUnique(op,text.value)){ addOption(sel,text.value); text.value = ''; } else alert('No'); }, false); |
destus,
а где addOption? |
Цитата:
var addOption = function(parent,node){ var option = document.createElement('option'); option.innerHTML = node; parent.appendChild(option); } |
Часовой пояс GMT +3, время: 19:22. |