[英]add value of attribute with specific condition on list items
i have this code. 我有这个代码。
<ul>
<li><span id='' key="num">30</span></li>
<li><span id='' key="0">40</span></li>
<li><span id='' key="num">20</span></li>
</ul>
how do i add (id="disable") to only that span of list item which have attribute (key="0") 如何将(id =“ disable”)仅添加到具有属性(key =“ 0”)的列表项的范围内
i am using this code . 我正在使用此代码。
$(function(){
$('li').each(function(){
if( $(this).find('span').attr('key') == '0' ) $(this).attr('span:id','disable')
});
})
使用属性选择器 :
$('li span[key="0"]').attr('id', 'disable');
You can use $(this).find('span').attr('id','disable')
您可以使用
$(this).find('span').attr('id','disable')
$(function(){ $('li').each(function(){ if( $(this).find('span').attr('key') == '0' ) $(this).find('span').attr('id','disable') }); })
#disable{ background : red; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <ul> <li><span id='' key="num">30</span></li> <li><span id='' key="0">40</span></li> <li><span id='' key="num">20</span></li> </ul>
But instead of using .each
to loop you can just use $('li > span[key=0]').attr('id','disable');
但是,
.each
使用.each
循环之外,您还可以使用$('li > span[key=0]').attr('id','disable');
$(function(){ $('li > span[key=0]').attr('id','disable'); })
#disable{ background : red; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <ul> <li><span id='' key="num">30</span></li> <li><span id='' key="0">40</span></li> <li><span id='' key="num">20</span></li> </ul>
Note: Don't duplicate Id .. if you intend to use the code for more than one element use class instead
注意:如果您打算将代码用于多个元素, 请不要使用Id ..
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.