gpt4 book ai didi

javascript - 在一个 div 中获取指定的文本,而不是在不同的 div 中搜索它们

转载 作者:行者123 更新时间:2023-11-30 06:01:17 25 4
gpt4 key购买 nike

我试图从一个 div 中获取文本,而不是我想在同一页面上搜索这些标题,但在不同的 div 中。如果其中一个标题存在,我想在其后添加一些文字。我尝试这样做,但我不知道问题出在哪里。上次我用这个 jquery 代码尝试过:

var cim = $.trim($('.hirblokk span.comments:contains("új")').parent(".hirblokk").children("h3").text());
jQuery.each(cim, function(X) {
$("ul.s_hir.show li.hir a:contains(X)").find("small").append(" (Új!)");
return (this == cim.length);
});

如您所见,我将文本放入“cim”(正在运行)。然后我尝试(第 3 行)检查“ul.s_hir.show li.hir a”之一是否包含其中一个文本,如果包含,我将(附加)一些东西放在小标签中(有一个小标签标签内的标签:文本..)(这不起作用)。我尝试了更多方法,但都没有用。如果我写:

$("ul.s_hir.show li.hir a:contains(a)").find("small").append(" (Új!)");

a 包含一个字符时,它会在每个 small 标签后加上 '(Új)'。所以看起来问题是我要如何检查它 a 是否包含其中一个文本。哦,我得到的不仅仅是文本,例如:“我是新手”和“哦,你好亲爱的”,其中只有一个包含 *ul.s_hir.show li.hir a*

最佳答案

我不确定我是否完全理解您要搜索的文本,但我发现了几个问题:

  • 您的 cim var 是单个字符串:正如 jQuery 文档所解释的那样,.text() 方法的结果是一个包含所有匹配元素的组合文本的字符串 http://api.jquery.com/text/ .因此,如果您有多个元素与您的选择器匹配,则 cim 将是所有文本串联的字符串。

  • jQuery.each() 遍历cim的每个字符,X是字符在字符串中的索引,不是值

  • 在您的第三行中,X 未被评估为 var,因为它在双引号中。

  • 我不明白您对 return (this == cim.length) 的期望:您正在比较一个数字 (cim.length) 和一个字符串 (the每个当前评估的值)。

尝试这样的事情:

// titles contain all the h3 elements you're searching
var titles = $('.hirblokk span.comments:contains("új")').parent(".hirblokk").children("h3"));
// you're iterating on each title
jQuery.each(titles, function(index,title) {
// you're searching links elements containing each title text
var text = $.trim($(title).text());
$("ul.s_hir.show li.hir a:contains("+text+")").find("small").append(" (Új!)");
});

关于javascript - 在一个 div 中获取指定的文本,而不是在不同的 div 中搜索它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8377032/

25 4 0
文章推荐: javascript - knockoutjs 的数据加载模式
文章推荐: javascript - 检查任务是否完成
文章推荐: javascript - 用户访问特定站点时 Firefox 自动重定向
文章推荐: javascript - 如何使用 javascript 将这个月和下个月添加到