我想遍历pageHeadings
中的每个div,如果子div的类匹配“menu_”,我想隐藏它。我到底错过了什么?
<div id="pageHeadings">
<div class="menu_practice">
<p>test</p>
<p>test2</p>
</div>
<div class="menu_about">
<p>test</p>
<p>test2</p>
</div>
$("#pageHeadings div").each(function (index, val) {
if($(this).attr('class').match("menu_")) {
$(this).hide();
}
});
获得:Uncaught TypeError: Cannot read property 'match' of undefined
console.log($(this).attr('class'));
给出:
col-md-1 col-md-offset-2
undefined
col-md-1
undefined
menu_practice
col-md-1
undefined
menu_about
col-md-1
undefined
menu_contact
所以我认为它发现它们还可以。
答案 0 :(得分:1)
您可以使用[class^=menu_]
,它会找到类别以menu_
开头的元素。
$("#pageHeadings div[class^=menu_]").hide();
或者,您也可以使用$(this).is('[class^=menu_]')
。
$("#pageHeadings div").each(function (index, val) {
if($(this).is('[class^=menu_]')) {
$(this).hide();
}
});