jquery - 通过最后两个字符定位元素

标签 jquery element

我有以下 HTML:

<div id="wrapper">
     <div id="a_12"></div>
     <div id="a_13"></div>
     <div id="a_14"></div>
     <div id="a_15"></div>
     <div id="a_16"></div>
     <div id="a_17"></div>
</div>

如何使用 jQuery 选择以 15 结尾的 div?

最佳答案

使用 attribute-ends-with 选择器:

$('div[id$="15"]');

$('div[id$="15"]').css('color', '#f90');
div {
  border: 1px solid #000;
  width: 50%;
  margin: 0 auto 0.5em auto;
}
div[id]::before {
  content: attr(id);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="wrapper">
  <div id="a_12"></div>
  <div id="a_13"></div>
  <div id="a_14"></div>
  <div id="a_15"></div>
  <div id="a_16"></div>
  <div id="a_17"></div>
</div>

JS Fiddle demo .

或者,您可以使用filter():

$('div').filter(function(){
    return this.id.slice(-2) == '15';
});

$('div').filter(function() {
  return this.id.slice(-2) == '15';
}).css('color', '#f90');
div {
  border: 1px solid #000;
  width: 50%;
  margin: 0 auto 0.5em auto;
}
div[id]::before {
  content: attr(id);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="wrapper">
  <div id="a_12"></div>
  <div id="a_13"></div>
  <div id="a_14"></div>
  <div id="a_15"></div>
  <div id="a_16"></div>
  <div id="a_17"></div>
</div>

JS Fiddle demo .

或者,使用纯 JavaScript:

document.querySelector('div[id$="15"]').style.color = '#f90';

document.querySelector('div[id$="15"]').style.color = '#f90';
div {
  border: 1px solid #000;
  width: 50%;
  margin: 0 auto 0.5em auto;
}
div[id]::before {
  content: attr(id);
}
<div id="wrapper">
  <div id="a_12"></div>
  <div id="a_13"></div>
  <div id="a_14"></div>
  <div id="a_15"></div>
  <div id="a_16"></div>
  <div id="a_17"></div>
</div>

JS Fiddle demo .

或者甚至只使用 CSS:

div[id$="15"] {
  color: #f90;
}

div {
  border: 1px solid #000;
  width: 50%;
  margin: 0 auto 0.5em auto;
}
div[id]::before {
  content: attr(id);
}

div[id$="15"] {
  color: #f90;
}
<div id="wrapper">
  <div id="a_12"></div>
  <div id="a_13"></div>
  <div id="a_14"></div>
  <div id="a_15"></div>
  <div id="a_16"></div>
  <div id="a_17"></div>
</div>

JS Fiddle demo .

引用文献:

关于jquery - 通过最后两个字符定位元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19015221/

相关文章:

javascript - 使用 moment.js 确定 moment() 是在特定时间 block 之前、期间还是之后

javascript - jquery ajax 调用在 Internet Explorer 中返回 403 禁止错误

Jquery代码在一个页面上有效,在另一个页面上无效

jquery - CF/jQuery 添加到数据库并刷新到 Select

java - 数组、算法和元素

javascript - 根据属性值选择元素

jquery - 如果在视口(viewport)中不可见,则使用 JQuery 更改 div 元素的位置

javascript - jQuery 动态主/子类别选择器

html - CSS3 转换——备用触发器?

javascript - 在 jQuery 中构建 html 元素的最清晰方法