【问题标题】:Check if div contains any of these words and if so show this div检查 div 是否包含这些单词中的任何一个,如果是,则显示此 div
【发布时间】:2020-07-02 05:07:39
【问题描述】:

我有一个脚本,它可以从 DVLA 连接中引入有关汽车的一些信息。

$json = json_decode($response, true);

然后这样显示在页面上

Model: <?php echo $json['model'];  ?><BR>

但是,我想做的是检查汽车模型,如果模型匹配 奥迪 RS4 奥迪 RS6 莲花 马自达RX8

那么页面需要显示div B,如果模式不在排除列表中,那么它可以显示div A。

所以我的想法与我找到的http://jsfiddle.net/9gHhD/类似

<cite class="fn"><?php echo $json['model'];  ?></cite>

测试如下:

<cite class="fn">AUDI RS4</cite>

然后是脚本

var searchText = 'AUDI RS4' , 'AUDI RS6';
$('cite.fn').filter(function () {
    return $(this).text() === searchText;
}) $("#excluded").css({display: "block"});

但这不起作用。我不知道如何告诉它寻找一系列不同的单词?或者如果这甚至是解决此问题的最佳方式?

谁能帮忙

【问题讨论】:

  • 查看api.jquery.com/contains-selector的基于文本内容选择的示例。
  • 我检查了你的小提琴,你想让bla2bla blabla4 也是红色的吗?
  • 嗨对不起,这不是我的小提琴,这是我找到的用来解释我从哪里得到代码的。
  • api.jquery.com/contains-selector 是的,非常相似 - 我如何要求它检查多个单词?比如那个约翰和乔治?

标签: jquery contains


【解决方案1】:

您可以按如下方式检查多个字符串:

$('cite.fn').filter(function () {
    return ["blabla", "bla2bla"].includes($(this).text());
}).css('color', 'red');

与以前一样,您只能检查单个字符串:

var searchText = 'blabla';

$('cite.fn').filter(function () {
    return $(this).text() === searchText;
}).css('color', 'red');

具体来说,includes() 允许您针对多个字符串值进行测试。

【讨论】:

  • 这正是我需要知道的,谢谢。返回 ["blabla", "bla2bla"].includes($(this).text());是我卡住的地方。谢谢
猜你喜欢
  • 2012-03-26
  • 2012-06-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-27
  • 2016-11-11
  • 2012-07-11
相关资源
最近更新 更多