【发布时间】:2017-10-26 08:01:23
【问题描述】:
这是我的 xml:
<?xml version='1.0'?>
<rss version="2.0">
<channel>
<title>Some Title</title>
<pubDate>1/1/17 00:00:00</pubDate>
<generator>SomeOne</generator>
<item>
<title>
Some Item Title 1
</title>
<link>http://example.org</link>
<description>
Lorem ipsum ...
</description>
<pubDate>1/1/17 00:00:00</pubDate>
<category>Cat1</category>
<category>Cat2</category>
</item>
<item>
<title>
Some Item Title 2
</title>
<link>http://example.org</link>
<description>
Lorem ipsum ...
</description>
<pubDate>1/1/17 00:00:00</pubDate>
<category>Cat2</category>
</item>
<item>
<title>
Some Item Title 3
</title>
<link>http://example.org</link>
<description>
Lorem ipsum ...
</description>
<pubDate>1/1/17 00:00:00</pubDate>
<category>Cat1</category>
</item>
....
....
....
</channel>
</rss>
我正在使用这个jQuery 代码来删除父母:
var myCat = 'Cat1';
rss.find('item').find('category').filter(':not(:contains('+ myCat +'))').parent().remove();
现在的问题是,正如您在我提供的 xml 中看到的那样。单一的,<item> 包含 2 个 <category>,其中一个与 myCat 匹配,但 <item> 仍然被删除,虽然它不应该被删除。 jsFiddle
附:从给定的示例中,仅应删除第二个 <item>。
【问题讨论】:
标签: javascript jquery xml