2012-04-22 1 views
0

可能性の重複:
How do I select text nodes with jQuery?アクセスするテキストノード次に、jQueryの

私はテキストノードでの選択のチェックボックスに隣接しているデータを移動しようとしていますチェックボックス。私はjqueryを使用しています。私が試した方法は、私が受け取った結果とともに以下に列挙されています。

<label for="cat_one"><input class="item" type="checkbox" id="cat_one" name="cat_one" /> Category 1</label> 
<label for="cat_two"><input class="item" type="checkbox" id="cat_two" name="cat_two"/> Category 2</label> 

したがってあなたは一石二鳥:あなたのa)は、あなたのマークアップがはるかに意味的に優れていると、b)

<input class="item" type="checkbox" /> Category 1 
<input class="item" type="checkbox" /> Category 2 


<script> 
    $('.item').click(function(){ 
     if($(this).attr('checked')) 
     { 
     $('#list').append("<span>" + $(this).next() + "<span><br/>") 
     //$(this).next() just writes "[object Object]" 
     //$(this).next().text() doesn't write anything 
     //Also tried $(this).nextSibling.nodeValue but throws "Cannot access property of undefined" 
     } 
     else 
     { 
      //This is remove the item from the list on uncheck 
     } 
    }); 
</script> 
+0

あなたはフィドルでこれを置けば、私たちはあなたが使用しているものの要素が見えた方が簡単な場合があります。しかし、 '[object Object]'は、あなたがDOM要素を取得していてコンテンツを取得していないことを意味します。 '$(this).next()。val()'を試しましたか? – Marc

+0

この質問は、このトピックに関する以前の質問とまったく同じです。その答えは別の同一の質問と併合することができる。 http://stackoverflow.com/questions/298750/how-do-i-select-text-nodes-with-jquery – iambriansreed

+0

$(this).next()。val()は私のリストに "undefined"と書いています。文字通り、すぐ次のノードにアクセスしようとしているので、私は実際にその他の例を使用したくありません。試してみると、それはフィドルに入れられますが、チェックボックス項目のリストは別のjsファイルによって生成されています。私はこの実際の問題に集中するためにそれを愚かにしようとしていました。 – ExceptionLimeCat

答えて

0

<input class="item" type="checkbox" id="cat_one" name="cat_one" /> <label for="cat_one">Category 1</label> 
<input class="item" type="checkbox" id="cat_two" name="cat_two"/> <label for="cat_two">Category 2</label> 

またはこの代わりに、このマークアップを持つ考えてみましょう.text()メソッドを使用してlabel要素のコンテンツにアクセスできます。

第一の変形はここで見ることができます:http://jsfiddle.net/skip405/DjWcg/

+0

実際には、イベントをノードツリーの上位レベルにあり、テキストノードにアクセスするアンカーに設定することで、動作するようになりました。しかし、私はこの方法がうまくいくとは思っていませんでした。ありがとう。 – ExceptionLimeCat

関連する問題