클래스 이름이 있는 행에 대한 첫 번째 셀 값의 쉼표로 구분된 목록을 가져오시겠습니까(Jquery 사용)?
문제
행이 선택되면 아래 테이블에서 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>
내 쿼리:
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(",");
.
결과는 values
문자열
제휴하지 않습니다 StackOverflow