Javascript jQuery-显示具有相同类的元素
我有两个ul列表标签,其中包含具有相同类的输入 我要做的是显示与我在键盘上键入的输入具有相同类的元素,并隐藏当前具有相同类的输入是否为空 示例:如果我想用类“test1”写入输入,我想显示另一个列表中类为“test1”的元素:Javascript jQuery-显示具有相同类的元素,javascript,html,jquery,class,Javascript,Html,Jquery,Class,我有两个ul列表标签,其中包含具有相同类的输入 我要做的是显示与我在键盘上键入的输入具有相同类的元素,并隐藏当前具有相同类的输入是否为空 示例:如果我想用类“test1”写入输入,我想显示另一个列表中类为“test1”的元素: 感谢您的帮助您可以使用.attr()在输入事件中获取当前元素的类,并使用当前类显示元素: $('#contTestA>li>input')。在('input',function()上{ var curCls=$(this.attr('class')
感谢您的帮助您可以使用
.attr()
在输入事件中获取当前元素的类,并使用当前类显示元素:
$('#contTestA>li>input')。在('input',function()上{
var curCls=$(this.attr('class');
$(`contTestB>li.${curCls}`).show();
});代码>
这是一个基于一些假设的简单解决方案:
input
只有一个类(如果有更多类,可以考虑自定义属性)
- 而且
li
只有一个类(同一备注)
$(“#contTestA输入”)。关于(“更改”,函数(){
$(“#contTestB li”).css(“显示”、“无”);
$(“li.”+$(this.attr(“class”)).css(“display”、“block”);
});代码>
解决方案是:
获取活动输入的类
隐藏#contTestB
仅显示与同一类匹配的项
$(“输入[type=text]”)。在(“输入”,函数()上{
var currentInput=$(此值);
$(“#contTestB li”).css(“显示”、“无”);
如果(currentInput.val().length>0){
var currentClass=currentInput.attr(“类”).trim();
$(“+currentClass).css(“显示”、“块”)
}
})
1
2
3
您试过什么吗?输入上的数据属性会让这个更干净。伙计,这太完美了!!谢谢如果输入为空,如何隐藏具有相同类的元素?:)