使用javascript填充选择框

时间:2015-03-27 22:06:28

标签: javascript jquery

我到处寻找,但我找不到解决这个问题的办法。我花了几个小时调试,我也无法弄清楚自己是怎么回事。我很抱歉,如果这是一个简单的解决方案,我似乎无法得到它。

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

<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);
};

但是,我收到一个错误:“未捕获的TypeError:无法在此行读取null的属性'值':

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>";
    });
 };

作为一个后续问题,我希望本草案有多个“回合”。当我这样做时,我想更新选择框,以及我在屏幕上的手风琴(填充在最后一个文本块中)。我当前的方法使用了两条注释掉的行。当我这样做时,会显示正确的文字,但我丢失了手风琴格式,我不知道为什么。任何可以提供帮助的人,我都非常感激!

1 个答案:

答案 0 :(得分:2)

更改

document.getElementById('#draftList')

document.getElementById('draftList')

#仅用于CSS。当您按ID抓取元素时,它只需要实际ID。