2012-03-21 7 views
0

HTML:、複数の追記、ダブルアペンド

<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の:それは、このようなリンゴやニンジンが、ときのようにHTMLリンクタグから新しい値を追加する必要があり

$('.link').click(function(){ 
    var item = $(this).text(); 
    $('#list').append('<option>'+item+'<\option>'); 
}); 

私はそれをクリックしてこれを行います(それぞれ1行につき2行を取得します)。

results

Eveyクリックは2つのオプションに1つの単語を空白で置き換えて結果を表示します。もっと奇妙なことに、もし私が物事のHTML部分を取り除くと、うまくいくように思えます。ちょうどテキストを使用してください。

+0

ブランドンは、私のために画像を追加するのに十分な素敵でした。それはギャップについてのことです。クリックごとに2行が追加されます。 – user1283754

答えて

9

私はなぜこれがこの動作を引き起こしているわからないんだけど、問題は

$('#list').append('<option>'+item+'<\option>'); 

スラッシュ

$('#list').append('<option>'+item+'</option>'); 
+0

おそらく、ブラウザが '<\option> 'が何であるかを理解していないため、"自動修正 "しようとしている可能性があります。 –

+0

それはそれだった.. Gesh ..ありがとうしかし、この奇妙な振る舞いを記録するのは良いことだ!私はそれを/ optionに変更しました。それは働いていました。常に世俗的な詳細..(私は間違った場所や何かに小数点を置いているに違いない、私はいつもそれをします!) - オフィススペース.. Brandonありがとう! – user1283754

+0

ブラウザは、 '<\option>'を '

2

このアプローチは、私のために正常に動作しなければならないことです。

$(function(){ 

    $('.link').click(function(){ 
     var item = $(this).text(); 
     $('<option>'+item+' </option>').appendTo($("#list")); 
    });; 

});​ 

ワーキングサンプル:http://jsfiddle.net/mKTzx/4/

関連する問題