1

テーブルが 1 つあり、そのテーブルでデータベースからデータを取得しています。

私のテーブルは以下のようになります:

data row 1 | data row 1 | data row 1 | data row 1 | data row 1 | BUTTON1 |
data row 2 | data row 2 | data row 2 | data row 2 | data row 2 | BUTTON2 |

任意の行からボタンをクリックすると、そのそれぞれの行のデータを取得したいと思います。

以下は、ID を動的に割り当てるコードです。

echo "<tr id = ".$srno.">     
     <td style='width:25px'> <input id = 'checkbx' type = 'checkbox' name =".$row['item_id']."></input> </td>".    
    "<td> ". $srno ." </td> <td>".$row['item_name']."</td>".       
    "<td> ". $row['item_category']."</td>".      
    "<td style='width:50px'><input class = 'image_button mImg'   id = ".$srno." type = 'image' title = 'Modify' src = 'images/modify.png' onClick = 'modifyItem()' name = ".$srno."></input></td>".        
    "</tr>";

これを達成するために私を助けることができますか?

4

3 に答える 3

1

<tr> にクラスを追加できます:

<tr class="row-of-data">

次に、それぞれのボタンにクリック ハンドラーを追加します。

$(".myButton").click(function(){
   var rowOfData = $(this).closest(".row-of-data");
   // now do something with the row, like rowOfData.text()
 });

closest() は、セレクタに一致する親/祖先を見つけて、DOM ツリーを上に移動します。find() も同じことを行いますが、子/子孫を検索します。

おそらく、各 にクラスを配置してそれぞれを抽出するか、データを再度解析することになります! だからあなたはで終わるかもしれません

<td class="name">Hal Incandenza</td>

jQuery ビットによって検出された HTML 内

$(this).closest(".row-of-data").find(".name").text()
于 2013-01-07T15:00:51.933 に答える
1
$(".image_button").click(function() {
    alert($(this).parent().parent().attr("id"));
}
于 2013-01-07T14:40:39.797 に答える
1

また

$(".image_button").click(function() {
    var tr = $(this).closest('tr');
    var cell2 = tr.find('td').eq(2).text();
}
于 2013-01-07T14:42:46.190 に答える