Javascript 显示具有属性的元素 水 啤酒 AAAAAAAA bbbbbbbb CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
我想:如果我用属性test=“one”点击radio Water,那么应该用属性test=“one”显示所有div。如何使用jQuery实现它Javascript 显示具有属性的元素 水 啤酒 AAAAAAAA bbbbbbbb CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC,javascript,jquery,html,Javascript,Jquery,Html,我想:如果我用属性test=“one”点击radio Water,那么应该用属性test=“one”显示所有div。如何使用jQuery实现它 LIVE:将标签附加到水文本,并使用属性选择器单击处理程序: <input type="radio" name="group2" test="one" value="Water"> Water <input type="radio" name="group2" test="two" value="Beer"> Beer<br
LIVE:将标签附加到
水
文本,并使用属性选择器单击处理程序:
<input type="radio" name="group2" test="one" value="Water"> Water
<input type="radio" name="group2" test="two" value="Beer"> Beer<br>
<div style="display: none" test="one">aaaaaaa</div>
<div style="display: none" test="two">bbbbbbb</div>
<div style="display: none" test="one">ccccccc</div>
水
$('label')。单击(函数(){
//逻辑告诉我,您只想显示
//属性与选定的单选元素匹配;隐藏以前的元素:
$('div[test]')。hide();
//获取测试值:
var test=$('#'+$(this.attr('for')).attr('test');
$('div[test=“”+test+'“]”)。show();
});
试试这个:
<label for="option1">
<input type="radio" name="group2" id="option1" test="one" value="Water"> Water
</label>
<script>
$('label').click(function() {
// Logic tells me that you want to only show the test elements whose
// attribute matches the selected radio element; Hide the previous ones:
$('div[test]').hide();
// Get test value:
var test = $('#' + $(this).attr('for') ).attr('test');
$('div[test="' + test + '"]').show();
});
</script>
请记住,在这里创建自己的属性是无效的。如果你使用HTML5,你应该考虑使用<代码>数据< /代码>属性来存储你需要与每一个元素相关的任何信息。 jsFoDels:
$("input[type='radio']").click(function() {
var test = $(this).attr("test");
$("div[test]").hide();
$("div[test='" + test + "']").show();
});
我相信这是你要找的东西
$("input[type=radio][value=Water]").click(function()
{
$("[test=one]").show();
});
试试这个
$(':radio[name="group2"]').click(function(e){
var test = $(this).attr('test');
$('div[test]').hide();
$('div[test='+test+']').show();
});
$(':radio[name="group2"]').click(function(e){
var test = $(this).attr('test');
$('div[test]').hide();
$('div[test='+test+']').show();
});
jQuery(document).ready(function(){
var yourAttributeName = 'test';
var allDivs = jQuery('div['+yourAttributeName+']');
jQuery('input['+yourAttributeName+']').click(function(){
allDivs.hide().filter('[' + yourAttributeName + '=' + jQuery(this).attr(yourAttributeName) + ']').show();
})
//check the init checked
.filter(':checked')
//and fire click event to filter
.click();
});