Я получаю данные с сервера в формате XML. Данные выглядит следующим образом:Метод jQuery для возврата объектов XML, где два поля равны?
<items>
<item>
<field1>10</field1>
<field2>11</field2>
<field3>12</field3>
</item>
<item>
<field1>10</field1>
<field2>11</field2>
<field3>11</field3>
</item>
</items>
Есть ли способ, чтобы написать заявление JQuery, чтобы возвращать только объекты XML, где field2
равняется field3
? В настоящее время я использую jQuery для фильтрации объектов xml, которые соответствуют определенным критериям (с использованием jQuery find
и contains
, например $("field2:contains(11)")
), но я не могу придумать инструкцию для фильтрации xml, где два из полей xml равны. Я всегда могу преобразовать XML в javascript-массивы и искать равные поля, а затем возвращать массив javascript как объект jQuery. Просто кажется, что должен быть способ сделать это с помощью инструкции jQuery.
Хорошая идея. Я хочу отфильтровать xml, где два поля не равны. Это работает (хотя и не так, как я хочу): var xml = ' .........'; $ (xml) .find ('item'). Each (function() { if ($ (this) .find ('field2'). Text()! = $ (This) .find ('field3'). .text()) { предупреждение ('поле 2 и поле 3 не равны'); $ (это) .empty(); // очищает содержимое - } }); Я попытался сделать «$ (this) .remove()», чтобы удалить
- из списка, но это не сработало. Не знаю, почему. –
2009-08-13 14:05:28
@MarkS - работает ли предупреждение, как и ожидалось? это просто метод удаления? – karim79
Alert works. Метод remove не удаляет- из списка xml
, который я пытаюсь сделать. –
2009-08-13 15:31:56