Javascript jquery if list equal 1删除按钮
如果列表等于1,我想删除按钮 从ID计数1列表中删除按钮 如果其他ID计数大于1,则不要删除按钮 使用jQueryJavascript jquery if list equal 1删除按钮,javascript,jquery,html,Javascript,Jquery,Html,如果列表等于1,我想删除按钮 从ID计数1列表中删除按钮 如果其他ID计数大于1,则不要删除按钮 使用jQuery var $this = jQuery(this); var $getList = jQuery('#count li'); var $sliderButtons = jQuery('#count .slider_next, #count .slider_prev'); if($getList.length == 1){ $sliderButtons.remove(); };
var $this = jQuery(this);
var $getList = jQuery('#count li');
var $sliderButtons = jQuery('#count .slider_next, #count .slider_prev');
if($getList.length == 1){
$sliderButtons.remove();
};
我只想使用list==1删除按钮
<div id="count">
<ul id="sldr">
<li>if equal 1 list, remove buttons.</li>
</ul>
<i class="slider_next"></i>
<i class="slider_prev"></i>
</div>
<div id="count">
<ul id="sldr">
<li>if equal > 1 list, don't remove buttons.</li>
<li>hello</li>
</ul>
<i class="slider_next"></i>
<i class="slider_prev"></i>
</div>
- 如果等于1,请删除按钮
- 如果相等>1列表,则不要删除按钮
- 你好
谢谢我为您制作了一个jsbin:
尝试删除一些li
元素,您将看到它是有效的
以下是解决方案:
if($getList.length == 1){
$sliderButtons.each(function(index,item){
item.remove();
});
};
我们不是在$sliderButtons
变量上调用remove()
,而是循环遍历每个元素,并在回调中运行代码。然后在$sliderButtons
变量中的每个元素上分别运行remove()
。尝试以下操作:
$(".count ul")
.filter(function( index ) {
return $( "li", this ).length === 1;
})
.closest(".count")
.find("i").remove();
我们使用.filter()
和内部函数将ul
元素集限制为只有一个li
的元素。然后最近(“.count”)
获取ul
的父级.count
。接下来查找并删除i
标记
您还需要删除HTML中的重复ID并替换为类。比如:
<div class="count">
<ul class="sldr">
<li>if equal > 1 list, don't remove buttons.</li>
<li>hello</li>
</ul>
<i class="slider_next">n</i>
<i class="slider_prev">p</i>
</div>
- 如果相等>1列表,则不要删除按钮
- 你好
N
P
请向我们展示基本的HTML,我为什么要问?因为你的代码基本上是有效的:如果它不适用于你,HTML与选择器不匹配。第一个问题,ID在页面上必须是唯一的。是的,我包括了JQueryNotworkingwith2ulworking!!!!!!!!!!!!谢谢