0

タイトルはそれをすべて言います。トップtr全体の日付のリストであるテーブルがあります。特定の td をクリックして、Jquery を使用して同じ列の一番上の行から td 値を取得できるようにしたいと考えています。

例えば:

<table>
  <tr>
     <td>Jan 1</td>
     <td>Jan 2</td>
     <td>Jan 3</td>
  </tr>
  <tr>
     <td>col 1, row 1</td>
     <td>col 2, row 1</td>
     <td>col 3, row 1</td>
  </tr>
  <tr>
     <td>col 1, row 2</td>
     <td>col 2, row 2</td>
     <td>col 3, row 2</td>
  </tr>
  <tr>
     <td>col 1, row 3</td>
     <td>col 2, row 3</td>
     <td>col 3, row 3</td>
  </tr>

列 1 のいずれかの td をクリックすると、値「Jan 1」が返されます。

列 2 のいずれかの td をクリックすると、値「Jan 2」が返されます。

列 3 のいずれかの td をクリックすると、値「Jan 3」が返されます。

わかる?

現在、これが空の td に対してのみ発生するようにしたいので、これが私の jQuery の始まりです。

$("table td:empty").dblclick(function(){

  $(TD VALUE FROM TOP OF SAME COLUMN).text();

});
4

2 に答える 2

0

これは、sindexを選択するときに関数といくつかのフィルタリングを組み合わせて行うことができます。tr

$("table tr").not(":first").on("click", "td", function () {
    var $tr = $(this).parents("table").find("tr:first"),
        idx = $(this).index() + 1,
        srch = "td:nth-child(" + idx + ")",
        txt = $tr.find(srch).text();
});

ワーキングフィドルはこちらです。

于 2013-04-25T23:31:54.177 に答える