【问题标题】:Using Contains, getting too many results使用包含,得到太多结果
【发布时间】:2018-12-26 02:58:26
【问题描述】:

我正在尝试创建一个下拉列表(用于个性化的 chrome 扩展),如果标题与文本框中的内容匹配(数据是一个长字符串),它将向复选框添加一个类(因此它们被选中)用逗号分隔)。

但是我试图让它只搜索文本而不是更多诸如:

如果我正在搜索:“GDPR”

它目前发现“GDPR”和“GDPR 兼容”。

我需要它只显示“GDPR”。

//adds the drop down
jQuery('body').prepend('<div style="border: 3px solid black;position: 
absolute;width: 80%;top: 10%;left: 10%;right: 10%;background-color: 
rgba(225,225,225,0.95);z-index: 1000;cursor: pointer;padding: 1%;">Input your 
options comma deliminated: <input class="options_text" style="float:right; 
padding-left:5px; width:50%;"><br/><input type="submit" 
class="options_select"></div>')

//adds class
jQuery('.options_select').click(function(){
x = jQuery('.options_text').val().split(",")
for (i = 0; i < x.length; i++) {
s = '.card_answer .content:contains('+x[i]+')'
    if(x[i] == jQuery(s).val()){
        jQuery(s).parent().parent().addClass('selectable_selected')
    }
}
}
)

【问题讨论】:

  • 尝试提供重现问题的代码,您将有更好的机会在这里得到答案。
  • 您的代码似乎与问题不匹配。你是如何“使用包含”的?
  • 搜索“完全包含”会发现很多结果
  • 我厌倦了使用过滤器,但我无法让它工作?

标签: jquery contains


【解决方案1】:

通过使用 split 循环并将结果分解为我需要的结果,设法解决了这个问题。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-02-23
  • 2014-11-30
  • 1970-01-01
  • 2011-01-25
相关资源
最近更新 更多