我在文本输入上附加了一个下拉菜单,我将性别视为男性,而女性我只是将其添加到我的li中,同时获得了fc。但是我在焦点上又得到了2个空的李。为什么?
这是我的代码:
$(document).ready(function(){
var gender = ['Female','Male'],
genderField = $('#gender');
var genderUpdate= function(){
genderField.focus(function(){
if(!$('#genderList').length){
var topPos = $(this).position().top,lftPos = $(this).position().left;
$('<ul id="genderList"></ul>').css({
position :'absolute',
top : topPos,
left : lftPos
}).appendTo($(this).parent());
$.map(gender,function(val,i){
$('<li>'+val+'<li>').appendTo('#genderList');
console.log('append');
})
}
})
}
genderUpdate();
})
这是小提琴:
这里有什么问题?
答案 0 :(得分:4)
找出差异; =)
$('<li>'+val+'<li>').appendTo('#genderList');
$('<li>'+val+'</li>').appendTo('#genderList');
浏览器一直“很好”并自动关闭你未关闭的li标签,每次迭代循环两次。