2012-02-17 16 views
0

レンダリングしたGridViewでクリックしたTDからTDの値を取得するにはどうすればよいですか?例えばクリックした行の値を取得するには

:私は私の第五TDに

$("td:eq(8)", "#GridView1 tbody tr:eq(" + index + ")").html("<div id='divActionProp'><span class='actionProposta' id='action_2'><b>Sell</b></span> | <span class='actionProposta' id='action_3'><b>Delete</b></span></div></td>"); 

をクリックしたときに、私は私が従う

example = $("td:eq(0)", "#GridView1 tbody tr").html(); 

をtryiedが、これは私の最初の行(TR)を返し、私の第二のTDの値を必要とし、クリックした行(TR)が必要です。

私は同じ行にクリックしたTDからTDの値を取得するためにtryied

My機能は

$('.acaoProposta').live('click', function() {  

    example = $("td:eq(0)", "#grdDetalheProposta tbody tr").html(); 
}); 

答えて

2

あなたはクリックイベントを処理しますが、イベントハンドラthis内の一般的な意味でそうイベントがトリガされた要素を意味しているか言うことはありません:

$("#GridView1 tbody tr").click(function() { 
    var example = $("td:eq(0)", this).html(); 
}); 

アップデート:どうやらあなたをクリックは他の列の1つのdivに(.live()を使用して)バインドされます。あなたはそれはあなたが気にTDを見つけるTRその内、その後に属し、TRを見つけるために、DOMを通って上に行くことができ、そこからして問題ありません、再びthisクリックされた要素を指していない:

$('.acaoProposta').live('click', function() { 
    var example = $("td:eq(0)", $(this).closest("tr")).html(); 
}); 

.closest() method行きます指定されたセレクタと一致する最初の祖先要素を探しているDOMツリーを経由します。

+0

私の質問を更新しました。クリックは私のTDにあります –

+0

しかし、クリックすると、DIVの中のCSSクラスから取得できます。どのように '.acaoProposta'関数で見ることができますか? –

+0

素晴らしい...うまくいきます!ありがとうございました –

0

チェックフィドルをこの

$("table tr").click(function() 
{ 

alert($(this).html()); 

}); 

を試してみてください

http://jsfiddle.net/MRXM8/

+0

私の質問が更新されました。クリックは私のTDです –

0

あなたはをクリックしていただいたので、個々のTDの内容を取得するには

$('#GridView1 tbody tr').click(function(){ 
    alert(this.innerText || this.textContent); // get row html 
}); 

しかし、あなたが持っている必要があります:あなたは、セットアップのクリックイベントハンドラに必要あなたが$(this).html()を使用することができます

$('#GridView1 tbody tr td').click(function(){ 
    alert(this.innerText || this.textContent); // get cell html 
}); 

お知らせしますがthis.innerText || this.textContentを使用すると、少し速くなります。

+0

私の質問が更新されました。 –

+0

しかし、クリックすると、DIVの中のCSSクラスから取得しました。どのように '.acaoProposta'の機能で確認できますか? –

0

HTMLの外観はどうですか?

これは仕事ができる:

$('tr').click(function(){ 
    alert($(this).find('td').html()); 
}); 
+0

私の質問が更新されました。 –

0

ただ検索に更新質問については

$("#GridView1 tbody tr").click(function(){ 
    alert($('td:eq(0)', this).html()); 
}); 

TRインスタンスを渡します。

$('.acaoProposta').live('click', function() {  

    example = $("td:eq(0)", this).html(); 
}); 

これを - TR要素をクリックするインスタンスです。

+0

私の質問が更新されました。 –

+0

しかし、クリックすると、DIVの中のCSSクラスから取得しました。どのように '.acaoProposta'関数で表示されますか –

+0

更新された質問の更新コードを追加しました。 –

関連する問題