使用JavaScript填充HTML select语句

时间:2013-07-01 20:26:54

标签: javascript

我正在尝试使用JavaScript创建和填充HTML选择和选项标签。选项语句中使用的文本来自XML文件。我能够解决XML文件问题,但是在填充新的选择框时我很困难。尽管我尝试使用此代码进行了任何更改,但它无法正常工作。有没有人对我在这里做错了什么有任何见解?

我的XML文件:

<londonStreets>
    <street>Clarence Street</street>
    <street>Dundas Street</street>
    <street>King Street</street>
    <street>Queens Avenue</street>
    <street>Richmond Street</street>
    <street>Waterloo Street</street>
    <street>Wellington Street</street>
    <street>York Street</street>
</londonStreets>

我认为我的JavaScript会创建新的选择框:

var streetSelector=document.createElement('select');
streetSelector.setAttribute('id', 'street');
for (i=0;i<x.length;i++)
{
    var option=document.createElement('option');
    option.setAttribute('value', x[i].childNodes[0].nodeValue);
    option.appendChild(document.createTextNode(x[i].childNodes[0].nodeValue));
    streetSelector.appendChild(option);
}

2 个答案:

答案 0 :(得分:2)

您尚未将streetSelector附加到DOM。看到这个JS小提琴:

document.getElementById("content").appendChild(streetSelector);

http://jsfiddle.net/Cszm8/

答案 1 :(得分:1)

没有看到x究竟是什么,这里是一个简化的选项populator例程:

var streetSelector=document.createElement('select');
streetSelector.id='street';
for (i=0;i<x.length;i++){
    streetSelector.appendChild(new Option( x[i].childNodes[0].nodeValue));
}