使用javascript填充选择框
Populate a Select Box using javascript
我到处找过,但找不到这个问题的解决方案。我花了好几个小时调试,我自己也搞不清楚是怎么调试的。如果这是一个简单的解决方案,我很抱歉,我只是似乎不明白。
我有一个空的选择框,如下所示:
<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。
相关文章:
- 使用“自动选择”填充表单字段
- 使用Web服务根据对另一个下拉框的选择填充第二个下拉框以获取信息
- jqGrid基于先前的选择填充选择选项
- 根据先前的选择填充单个输入 - MYSQL PHP JS
- jQuery 根据第一个选择菜单中的值选择填充第二个选择菜单
- 根据第二个和第一个下拉列表选择填充第三个下拉列表
- Select2使用ajax和php基于第一个(多个)选择填充第二个字段
- PHP从下拉选择填充文本框
- 使.close选择填充来初始化脚本
- Coldfusion使用ajax(第2部分)通过下拉选择填充表单
- Coldfusion使用ajax通过下拉选择填充表单
- 如何基于第一个选择填充第二个选择菜单,基于第二个填充第三个选择菜单-使用Javascript
- 根据下拉选择填充文本字段
- 基于HTML下拉选择填充输入
- jQuery在选择填充其他字段时自动完成
- 根据另一个下拉列表中的选择填充下拉列表
- 根据html中的复选框选择填充文本框
- 根据一个下拉选择填充多个东西
- 使用AJAX根据选择填充表单字段
- Angular js在HTTP响应后选择填充列表