有我的代码
<input type="radio" name="category" id="elementary" value="elementary" /> 1
<input type="radio" name="category" id="junior" value="junior" /> 2
<input type="radio" name="category" id="senior" value="senior" /> 3
<input type="radio" name="category" id="university" value="university" /> 4
<input type="radio" name="category" id="profession"/> 5
<div id='grade_select' class="clearfix">
<div id='elementary_grade' class="clearfix"></div>
<div id='junior_grade' class="clearfix"></div>
<div id='senior_grade' class="clearfix"></div>
<div id='university_grade' class="clearfix"></div>
<div id='profession_grade' class="clearfix"></div>
</div>
我想:
当检查一个收音机时,需要隐藏grade_select中的所有div,然后显示div包含当前收音机值的div
有我的js代码,我不知道如何继续
<script type="text/javascript">
$(document).ready(function($){
$( "input[name='category']" ).bind( "click", category_select)
});
function category_select(){
$("div:[id=this.attr[id]]).show()
}
</script>
仅供参考:这个问题是this other question的衍生产品。
答案 0 :(得分:4)
<script type="text/javascript">
$(document).ready(function($){
$( "input[name='category']" ).bind( "click", function() {
$("#grade_select div").hide().parent().find( '#' + this.id + "_grade" ).show();
});
});
</script>
答案 1 :(得分:2)
尝试:
$("input[name='category']").click(function(){
var id = $(this).attr('id');
$("div#grade_select > div").hide();
$("#" + id + "_grade").show();
});
答案 2 :(得分:1)
$("input[name='category']").click(function(){
$("#grade_select div").hide().filter('#' + this.id + '_grade').show();
});
答案 3 :(得分:0)
您可以先创建一个包含ID的变量,然后将其用作选择器:
function category_select() {
var $this = $(this),
id = '#' + $this.attr('id') + '_grade'; // calculate ID of element to show
$('#grade_select')
.children() // select all children
.hide() // hide all children
.filter(id) // select the right one
.show(); // and show it
}
答案 4 :(得分:0)
使用选择器#grade_select > div
隐藏所有直接子项的div(如果您愿意,可以在其中包含其他div),然后过滤掉您要显示的div:
$(document).ready(function($){
$("input[name=category]").click(function(){
$("#grade_select > div").hide().filter("#" + this.id + "_grade").show();
});
});
答案 5 :(得分:0)
jquery代码
$("input[type='radio']").click(function() {
$("#grade_select div").hide();
$("#" + this.id + "_grade").show();
});