Shp*_*ord 18 javascript jquery css-selectors
我目前正在使用它来获取页面上特定HTML的类:
$(this).parent("div").attr('class')
Run Code Online (Sandbox Code Playgroud)
但这div有多个类:current_status status_billed
我的最终目标是获取以类开头的类status_并用不同的类名替换它.
因此,使用.parent()上面的函数,我可以选择我需要的div,但是我需要删除status_billed该类并将其替换为(例如)status_completed(或许多其他类名).
Mat*_*all 45
选择div具有status_billed该类的s :
$(this).parent('div.status_billed')
Run Code Online (Sandbox Code Playgroud)
选择div其class属性包含的s status_:
$(this).parent('div[class*=status_]')
Run Code Online (Sandbox Code Playgroud)
这是jQuery选择器的最佳选择.你可以做得更好.filter():
$(this).parent('div').filter(function ()
{
var classes = $(this).attr('class').split(' ');
for (var i=0; i<classes.length; i++)
{
if (classes[i].slice(0,7) === 'status_')
{
return true;
}
}
return false;
});
Run Code Online (Sandbox Code Playgroud)
...但我不确定你为什么这么做 - .parent()最多返回1个元素.你是说.closest()还是.parents()?