الحصول على قائمة مفصولة بفواصل لقيم الخلية الأولى للصفوف ذات اسم الفئة (باستخدام Jquery)؟
سؤال
محاولة الحصول على المعرفات من الجدول أدناه عند تحديد صف.على سبيل المثال، يجب أن يعود jquery:"12,14".. الكود الخاص بي أدناه يُرجع سلسلة فارغة؟
أتش تي أم أل الخاص بي:
<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