Разбор таблицы в XML-файле с помощью jquery - PullRequest
0 голосов
/ 07 сентября 2018

Я должен разобрать xml-файл, в котором есть такая часть:

<part>configuration</part>
<table>
  <thead>
    <tr>
      <th>Tester Name</th>
      <th>Campaign Name</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>john</td>
      <td>random</td>
    </tr>
  </tbody>
</table>

Дело в том, что я должен анализировать еще один <table>, который находится в том же файле с другим именем <part>. Я много искал, но не смог найти функцию или способ получить, например, имя тестера и название кампании. Я новичок в jquery, поэтому, вероятно, я не нашел / не понял, как разобрать эти данные. Спасибо всем, кто мне поможет! будь то ссылки на учебники или функции предложения.

1 Ответ

0 голосов
/ 07 сентября 2018

Вы можете использовать jQuery.parseXML () для анализа строки в XML-документе.

Затем вам нужно Следующий соседний селектор («предыдущая + следующая») , чтобы выбрать таблицу рядом с элементом детали. Чтобы выбрать элемент детали с указанным текстом, вам нужно использовать : contains () Selector

Фрагмент:

var xml = `<start>
              <part>configuration</part>
               <table>
                  <thead>
                     <tr>
                        <th>Tester Name</th>
                        <th>Campaign Name</th>
                    </tr>
                 </thead>
                 <tbody>
                    <tr>
                      <td>john</td>
                      <td>random</td>
                    </tr>
                 </tbody>
              </table>
          </start>`;
          
          
var xmlDoc = $.parseXML( xml );  // parse xml string
var xml = $( xmlDoc );    // get the jQuery object
// find the table next to part tag containing.....
var tbl = $xml.find( "part:contains(configuration) + table" );

console.log(tbl.get(0).outerHTML);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...