2012-03-20 30 views
0

HTMLからグラブのTextContentjQueryの:子要素

<a href="report.php?id=5&file=name.jpg" id="5" class="report">Report Content<span class="hidden">name.jpg</span></a> 

jQueryの

$('.report').click(function(event) { 
    var id = this.id; 
    var file = $(this).children('span').textContent; 

    alert(file); 

    $(this).fadeOut("slow"); 

    $.ajax({ 
     type: 'GET', 
     data: 'id=' + id + '&file=' + file, 
     url: 'http://www.sitename.com/report.php', 
     success: function() { 

     } 
    }); 
    return false; 
} 

を私はトラブルを抱えているコードの行:

var file = $(this).children('span').textContent; 

どのように適切にすることをつかむことができますスパンのテキストコンテンツを保存し、変数fileに保存しますか?

また、私はこれを行うべきであるか、私の方法でいいですか?

答えて

0

textメソッドを使用します。

var file = $(this).children('span').text(); 

childrenはjQueryのインスタンスを返すので、それはtextContent性質を持っていません。あなたはネイティブtextContentプロパティを使用したくない場合は別の方法として、あなたは基礎となるDOM要素にアクセスすることができます、しかし

var file = $(this).children('span')[0].textContent; 

をそれはそれでjQueryのバージョンとは若干異なることに注意してtext方法は、連結されたテキストを返します。すべての選択されたノードから(あなたの現在のコードでは、それは単なるspanですが、別のspan要素を追加した場合、それは異なります)。