2012-07-02 1 views
0

Вот код, который у меня есть, я пытаюсь добавить элементы в массив в раскрывающийся список. Код работает нормально до метода appendChild. Я не могу понять, почему эта строка не работает. Вот кодjavascript appendChild не работает

</head> 
<body> 
    <h1> Eat Page</h1> 
    <p id="test">Hi</p> 
    <select id="CusineList"></select> 

    <script type="text/javascript"> 

     var cuisines = ["Chinese","Indian"]; 
     var sel = document.getElementById('CuisineList'); 

     for(var i = 0; i <cuisines.length; i++){ 

      var optionElement = document.createElement("option"); 

      optionElement.innerHTML = cuisines[i]; 

      optionElement.value = i;//cuisines[i]; 
      //document.getElementById("test").innerHTML = cuisines.length; 
      sel.appendChild(optionElement); 

     } 
    </script> 

    <p> When </p> 
</body> 

</html> 
+0

Вы получаете какие-либо ошибки? Откуда вы знаете, что это не работает? Что означает «не работает»? –

+0

Я считаю, что есть разные способы добавления элементов, когда дело доходит до выбора элементов ... – 0x499602D2

ответ

4

У вас заклинание отсутствует.

Ваш идентификатор CusineList, но когда вы используете CuisineList для выбора.

Кроме того, your code works.

+0

Да, это была ошибка орфографии – Ameya

0

Там опечатка на

var sel = document.getElementById('CuisineList'); 

Это должно быть

var sel = document.getElementById('CusineList'); 

Или изменить HTML. От

<select id="CusineList"></select> 

Для

<select id="CuisineList"></select> 
0

Когда мы добавляем узел с помощью Java Script, после установки атрибутов узлов связи/свойство первого, мы должны добавить этот узел в связанный с ним родитель и после добавления узла, мы можем установить его содержимое или связанный с ним внутренний HTML/текст.

здесь является решение вопроса выше:

var cuisines = ["Chinese", "Indian"];var sel = document.getElementById('CusineList'); 
var optionElement; 
for (var i = 0; i < cuisines.length; i++) { 
    optionElement = document.createElement("option"); 
    optionElement.value = i; 
    sel.appendChild(optionElement); 
    optionElement.innerHTML = cuisines[i]; 
    document.getElementById("test").innerHTML = cuisines.length; 
} 

Я создал ведро с раствором на http://codebins.com/codes/home/4ldqpcn