2

行が選択されているときに、下のテーブルから ID を取得しようとしています。たとえば、jquery は「12,14」を返す必要があります。以下のコードは空の文字列を返しますか?

私のhtml:

<table id="display" width="100%">
  <thead>
      <tr>
           <th>ID</th>
           <th>first</th>
           <th>last</th>
           <th>number</th>
       </tr>
   </thead>
<tbody>
...etc...
   <tr class="selected">
      <td>12</td>
      <td>Bob</td>
      <td>Smith</td>
      <td>9999</td>
   </tr>
   <tr>
      <td>13</td>
      <td>Lee</td>
      <td>Smith</td>
      <td>8888</td>
   </tr>
   <tr class="selected">
      <td>14</td>
      <td>JJ</td>
      <td>Wolf</td>
      <td>77777</td>
   </tr>
... etc..
</table>

私のJquery:

 var nameIDs = $('table tr.selected td:first').map(function () {
                return this.value;
            }).get().join(',');
4

2 に答える 2

4

valueは td に対して定義されていません。 または を使用する必要がありますthis.innerText。の代わりにthis.innerHTMLも使用してくださいfirst-childfirst

ライブデモ

var nameIDs = $('table tr.selected td:first-child').map(function () {
    return this.innerText;
}).get().join(',');

編集

html も無効です。すべての行</td>で 1 秒で終了できませんでした。td

変化する

<td>Smith<td>

<td>Smith</td>
于 2014-07-30T20:52:01.447 に答える
0

このコードはあなたを助けるかもしれません

var elems = $(".selected>td:first-child");
for(var key in elems )
  elems[key] = $(elems[key]).html();
var values = elems.join(",");

結果は文字列にありますvalues

于 2014-07-30T21:10:30.513 に答える