كيف يمكنني تحديد الكل <th> عناصر من فئة "sortasc" ضمن جدول محدد الهوية ؟

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

  •  01-07-2019
  •  | 
  •  

سؤال

دعونا نقول لدي HTML التالية:

<table id="foo">
  <th class="sortasc">Header</th>
</table>

<table id="bar">
  <th class="sortasc">Header</th>
</table>

وأنا أعلم أنني يمكن أن تفعل التالية للحصول على كل من ال العناصر التي class="sortasc"

$$('th.sortasc').each()

إلا أن يعطيني ال عناصر من كل جدول فو و الجدول شريط.

كيف يمكن أن أقول أعطني عشر عناصر من الجدول فو?

هل كانت مفيدة؟

المحلول

الجدول#فو ال.sortasc

نصائح أخرى

هذا كيف يمكنك أن تفعل ذلك مع متابعة مباشرة JS:

var table = document.getElementById('tableId');
var headers = table.getElementsByTagName('th');
var headersIWant = [];
for (var i = 0; i < headers.length; i++) {
  if ((' ' + headers[i].className + ' ').indexOf(' sortasc ') >= 0) {
    headersIWant.push(headers[i]);
  }
}
return headersIWant;

CSS محدد سيكون شيئا مثل '#فو ال.sortasc'.في مسج التي من شأنها أن تكون $('#فو ال.sortasc').

مع جدول متداخل مثل:

<table id="foo">
  <th class="sortasc">Header</th>
  <tr><td>
    <table id="nestedFoo">
      <th class="sortasc">Nested Header</th>
    </table>
  </td></tr>
</table>

$('الجدول#فو ال.sortasc') سوف تعطيك كل عشر لأنك باستخدام سليل محدد.إذا كنت تريد فقط فوو ال ، ثم يجب عليك استخدام الطفل محدد - $('الجدول#فو > ال.sortasc').

علما أن الطفل محدد غير معتمد في CSS ل IE6 ، على الرغم من مسج سوف لا تزال تفعل ذلك بشكل صحيح من جافا سكريبت.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top