Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何检查id是否包含多个单词?_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 如何检查id是否包含多个单词?

Javascript 如何检查id是否包含多个单词?,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有一个部门: <div id="picture_contents_12356_title"></div> “12356”是一个自动生成的唯一id,我需要它。如何为具有“图片内容”和“标题”的id创建jQuery选择器 我知道你可以做[id*=“picture\u contents”],但我还需要检查它是否也包含“title”。我如何在那里创建和逻辑 我想也许可以将id提取到一个变量中,然后检查indexOf(“picture\u contents”)和indexO

我有一个部门:

<div id="picture_contents_12356_title"></div>

“12356”是一个自动生成的唯一id,我需要它。如何为具有“图片内容”和“标题”的id创建jQuery选择器

我知道你可以做
[id*=“picture\u contents”]
,但我还需要检查它是否也包含“title”。我如何在那里创建和逻辑


我想也许可以将id提取到一个变量中,然后检查
indexOf(“picture\u contents”)
indexOf(“title”)
,但我想知道是否有更好的方法。

只要继续添加基于属性的选择器
[attribute*=”。“]

就你而言

$('[id*="picture_contents"][id*="title"]')
建议:如果单词的模式不变,您可以使用
^=
:以开头或
$=
:以选择器结尾


因为


或者,您可以为所有适当的div指定一个类,并引用该类

$(“[id*=”picture\u contents”][id*=”title“]”)
@ShaunakD,谢谢你这么做了。只是出于好奇,*=运算符是否像“contains”一样工作?谢谢,我不知道你可以像那样连接id选择器来形成AND逻辑。@Alistair:是的,它工作是因为属性选择器就像id选择器一样,类选择器或伪类。您可以混合和匹配这些元素的任意组合,只要元素将匹配所有这些元素。只是要小心不要过于具体。在本例中,这没关系,因为没有其他解决方案不更改标记(或生成标记的任何内容)。更好的做法是将唯一属性所需的元素分组。上面的代码很难维护,因为IDs的结构可能随时发生变化。
<div id="picture_contents_12356_title"></div>
$('[id^="picture_contents"][id$="title"]')