0

我想用一组值填充一个下拉列表,从 1,2,.... 100。目前,我正在这样做,但它不起作用。

在头部

<script type="text/javascript" src="./jquery-1.8.3.min.js"></script>
<script type="text/javascript">
    var select = document.getElementById("selectAge");
    var options = ["1", "2", "3", "4", "5"];
    for(var i = 0; i < options.length; i++) {
        var opt = options[i];
        var el = document.createElement("option");
        el.textContent = opt;
        el.value = opt;
        select.appendChild(el);
    }​
</script>

然后,在表格中,我有

<label>Age</label>
<select id="selectAge"> 
    <option>Select your age</option>        
</select>

下拉列表未填充单个值。我的意思是,我不明白为什么它没有发生。一种更正可能是将 java 脚本代码放在结束</body>标记之前,因为它应该仅在加载 DOM 后填充。但我什至尝试过,但它不起作用。

4

2 回答 2

1

在小提琴中工作得很好。如果您使用的是 jQuery,请将整个内容包装在

$(function() { ... your code ...})` 

等到 DOM 准备好。

于 2012-12-26T19:57:51.630 回答
1
<html>
    <script type="text/javascript" src="http://code.jquery.com/jquery-1.8.3.min.js"></script>
<script type="text/javascript">
    $(document).ready(function() {
        var selectAge = $("#selectAge"), 
        options = [1,2,3,4,5,6], 
        i;
        for ( i = 0; i < options.length; i++) {
            $(selectAge).append("<option value='" + options[i] + "'>" + options[i] + "</option>");
        }
    });
</script>
<body>
<lable>Age:</lable>
<select id="selectAge">
    <option>Select your age</option>
</select>
</body>
</html>
于 2012-12-26T20:13:11.633 回答