[英]Show/Hide div when click on radio
I've seen similar questions like this before but their example is using IDs. 之前我曾见过类似的问题,但他们的示例使用的是ID。 What if I want to use classes only? 如果我只想使用类怎么办?
$(document).ready(function() {
$("input[name$='cars']").click(function() {
var test = $(this).val();
$(".desc").hide(200);
$(".desc" + test).show(200);
});
});
If you wanted to remove the id
attributes for identifying the div
elements, you could use data()
attributes instead. 如果要删除id
属性以标识div
元素,则可以改用data()
属性。 Try this: 尝试这个:
<div class="desc" data-cars="2">2 Cars Selected</div>
<div class="desc" data-cars="3" style="display: none;">3 Cars</div>
$("div.desc").hide().filter(function() {
return $(this).data('cars') == test;
}).show();
Since you have mentioned that you want to use only classes instead of IDs. 既然您已经提到过,您只想使用类而不是ID。 You have to use unique class names for each HTML tag. 您必须为每个HTML标签使用唯一的类名称。
$(document).ready(function() { $("input[name$='cars']").click(function() { var selectedClass = $(this).attr("class"); //alert(".dec" + selectedClass); $("div.desc").hide(); $(".desc." + selectedClass).show(); }); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <div id="myRadioGroup"> 2 Cars <input type="radio" name="cars" checked="checked" value="2" class="2cars" />3 Cars <input type="radio" name="cars" value="3" class="3cars" /> <div class="desc 2cars"> 2 Cars Selected </div> <div class="desc 3cars" style="display: none;"> 3 Cars </div> </div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.