由于您无法控制 HTML,因此请忘记 ID。
$('div:has(input[type=hidden]) a')
这意味着,给我所有嵌套在一个div
元素中的超链接,这些超链接必须在 DIV 中嵌套一个隐藏的输入。
你应该大致有以下
$('div:has(input[type=hidden]) a').each(function (i, link) {
$(link).attr('href', 'whatever.bla');
});
如果您将 rss 提要 html 提取到字符串中,那么您可以这样做:
// assuming you fetched the rss feed as a string or responseText
var htmlString = '<div id="main"><input type="hidden" name="bilbo" value="0"><a id="baggins" href="somewhere.com"></div><div id="main"><a id="baggins" href="somewhere-else.com"></div><div id="main"><a id="baggins" href="somewhere-elseagain.com"></div>';
var $feeds = $(htmlString);
$feeds.find('div:has(input[type=hidden]) a').each(function (i, link) {
$(link).attr('href', 'whatever.bla');
});