سؤال

باستخدام XPath وحزمة أوتيل أتش تي أم أل أحتاج لتحديد destination النص باستخدام color:#ff00ff.

بلدي HTML يشبه هذا:

<table>
   <tr style="color:#ff00ff">
      <td></td>
   </tr>
   <tr>
      <td>destination</td>
   </tr>
   <tr>
      <td></td>
   </tr>
   <tr>
      <td>not destination</td>
   </tr>
</table>
هل كانت مفيدة؟

المحلول

/ TABLE / TR [@ style = "اللون: # FF00FF"] / التتبع الأخوة :: TR [1] / TD [1] / النص ()

يختار <tr> التي لديها style="color:#ff00ff", ، والذهاب من هناك، نص الأول <td> طفل التالي <tr>.

للحصول على سلامة إضافية، يمكنك استخدام:

TR [ترجمة (style، "،"، ") =" اللون: # FF00FF "

هذا يزيل أي مسافات من قيمة السمة، لذلك تصبح الأمور أكثر استقلالية قليلا عن مصدر HTML.

نصائح أخرى

باستخدام JQuery قد تبدو مثل هذا:

$('tr[style*="color:#ff00ff"]').next('tr').children().text();

هذا يعتمد اعتمادا كبيرا على هيكل المستند بالضبط وتعريف النمط. ستجد أي tr يحتوي على نمط يحتوي على السلسلة "اللون: # FF00FF" (بالضبط، لا توجد مسافات، إلخ). من هذا الصف، سيتم بعد ذلك تحديد صف الأخ التالي واحصل على محتويات النص من كل الأطفال المباشرين. في حالتك، سيكون هذا عنصر العمود الوحيد.

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