我的表格中有一个列表框。
<span>
<select size=5 id="submission_author_ids" name="submission[author_ids][]" multiple onfocus="displayOptions();"> </select>
</span>
我有一个函数可以读取列表框中的所有选项,然后将其附加到div中。
function displayOptions(){
var list = document.getElementById('submission_author_ids');
//$j('#spanSubmitters').remove();
for(var i = 0; i < list.options.length; ++i)
$j('#spanSubmitters').append(list.options[i].text);
}
问题在于每次焦点都出现在列表框上时,选项会附加到div。这可能导致重复。 我想首先删除div中的所有附加选项,并在每次列表框获得焦点时重新附加选项。
我尝试了下面的代码,但它似乎不起作用---选项不再显示
$j('#spanSubmitters').remove();
如果有人能帮我解决这个问题,我将不胜感激。
干杯
答案 0 :(得分:4)
使用empty()。 remove()
删除整个元素。 empty()
只删除其中的所有子节点。
$j('#spanSubmitters').empty();
答案 1 :(得分:1)
试试这个:
$j('#spanSubmitters').children().remove();