使用javascript填充选择框

Populate a Select Box using javascript

本文关键字:选择 填充 javascript 使用      更新时间:2023-09-26

我到处找过,但找不到这个问题的解决方案。我花了好几个小时调试,我自己也搞不清楚是怎么调试的。如果这是一个简单的解决方案,我很抱歉,我只是似乎不明白。

我有一个空的选择框,如下所示:

<p id='draftChoice' class='hide'>
    Select draft choice:
    <select id='draftList'>
    </select>
    <input type=submit value='Draft' id='draft'>
</p>

当你点击草稿时,这将运行:

draftRound = function() {
var draftee = document.getElementById('#draftList').value;
prospectPool.splice(draftee, 1);
prospectPool.players.splice(0, 13);
};

然而,我在这一行上得到了一个错误:"Uncaught TypeError:无法读取null的属性'value'":

var draftee = document.getElementById('#draftList').value;

我的最佳猜测是,当我填充框时,值没有被正确定义,我在这里这样做:

createDraftList = function() {
//$('#right').html("");
//$('#draftList').html("");
for (var i = 0; i < prospectPool.players.length; i++) {
    $('#right').append("<h4>" + prospectPool.players[i].name + "</h4><div><p>" + prospectPool.players[i].overall + "<br>" + prospectPool.players[i].position + "<br>" + prospectPool.players[i].playerType);
}
$('#right').accordion();
$('#draftChoice').removeClass('hide');
    $(prospectPool.players).each(function() {
        $('#draftList').append($("<option>").attr('value',this.name).text(this.name))  + "</option>";
    });
 };

作为一个后续问题,我想对这份草案进行多次"轮次"。当我这样做时,我想更新选择框,以及屏幕上的手风琴(填充在最后一块文本中)。我目前的方法使用了两个注释掉的行。当我这样做时,正确的文本会出现,但我丢失了手风琴格式,我不知道为什么。任何能帮忙的人,我都非常感谢!

更改

document.getElementById('#draftList')

document.getElementById('draftList')

#仅在CSS中使用。当您通过ID获取元素时,它只需要实际的ID。