jQuery的追加本身运行两次,多次追加,双追加
问题描述:
<body>
<p><a href="#" class="link" >Apples</a> <a href="#" class="link" >Berries</a> <a href="#" class="link">Carrots</a></p>
<select id="list"></select>
</body>
的Jquery:
$('.link').click(function(){
var item = $(this).text();
$('#list').append('<option>'+item+'<\option>');
});
应该从HTML链接标记,如苹果或胡萝卜但是,当追加新值我点击它它是这样做的(每个获得两行)
结果:
埃维单击结果在两个选项之一与单词另一个空白。更奇怪的是它似乎工作,如果我拿出的东西的HTML部分..只需使用文本。
答
我不知道这是为什么造成这种现象,但问题是,
$('#list').append('<option>'+item+'<\option>');
应该是一个正斜杠
$('#list').append('<option>'+item+'</option>');
+0
这可能是因为浏览器不明白“”是什么,所以它试图“自动纠正”的东西。 – 2012-03-21 15:42:59
+0
就是这样.. Gesh ..谢谢但是很好记录这种奇怪的行为!我改变它/选项,它的工作..总是平凡的细节..(我必须把一个小数位在错误的地方或东西,我总是这样做...) - 办公空间..谢谢布兰登! – user1283754 2012-03-21 15:47:56
+0
浏览器正在将不正确的''视为空白选项的开头,而不是'
答
这种方法工作正常,我。
$(function(){
$('.link').click(function(){
var item = $(this).text();
$('<option>'+item+' </option>').appendTo($("#list"));
});;
});
布兰登是不够好加我的形象给我。这是关于它看到的差距。它为每次点击添加两行。 – user1283754 2012-03-21 15:46:43