获取具有类名的行的第一个单元格值的逗号分隔列表(使用 Jquery)?

StackOverflow https://stackoverflow.com//questions/25046666

  •  21-12-2019
  •  | 
  •  

当选择一行时,尝试从下表中获取 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(',');
有帮助吗?

解决方案

value 没有为 td 定义,您需要使用 this.innerText 或者 this.innerHTML, 也使用 first-child 代替 first

现场演示

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

编辑

html 也无效,你错过了关闭 </td> 在第二个 td 对于所有行。

改变

<td>Smith<td>

<td>Smith</td>

其他提示

此代码可以帮助您

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

结果是字符串生成型迭代码

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top