如何在jQuery中使用单选按钮切换div可见性?
我知道这里还有很多类似问题的帖子,但我可以找到一个与多个单选按钮相关的帖子,这些按钮用于在单个页面上切换可见性 我的表单上有一组20个问题,当用户选择“是”时,我希望为该特定问题显示一个文本区域,以便他们可以输入描述 我以前遇到过一个问题,选择“是”单选按钮将切换页面上所有文本区域的可见性,但我尝试使用如何在jQuery中使用单选按钮切换div可见性?,jquery,toggleclass,Jquery,Toggleclass,我知道这里还有很多类似问题的帖子,但我可以找到一个与多个单选按钮相关的帖子,这些按钮用于在单个页面上切换可见性 我的表单上有一组20个问题,当用户选择“是”时,我希望为该特定问题显示一个文本区域,以便他们可以输入描述 我以前遇到过一个问题,选择“是”单选按钮将切换页面上所有文本区域的可见性,但我尝试使用parent().find('.toggle')来解决这个问题,但它似乎仍然不起作用 你能提供的任何帮助都会很好 Javascript: $('.toggle').hide(); $('.sho
parent().find('.toggle')
来解决这个问题,但它似乎仍然不起作用
你能提供的任何帮助都会很好
Javascript:
$('.toggle').hide();
$('.show').bind('change',function(){
var showOrHide = ($(this).val() == 1) ? true : false;
showOrHide.parent().find('.toggle').toggle(showOrHide);
})
HTML:
问题1
不
对
问题2
不
对
在下一行中,将true
或false
分配给showOrHide
变量:
var showOrHide = ($(this).val() == 1) ? true : false;
然后尝试对该布尔文本调用jQuery方法,显然这是行不通的。请再次使用此。您也可以使用同级,而不是升级一个级别:
$(this).siblings('.toggle').toggle(showOrHide);
这是一个例子
另一方面,您可以稍微简化代码,因为0
和1
将强制执行false
和true
,因此您不需要条件语句:
$('.show').bind('change',function() {
$(this).siblings('.toggle').toggle($(this).val());
});
另外,如果您使用的是最新版本的jQuery(1.7),您应该使用而不是bind
没问题,很高兴我能提供帮助:)刚刚意识到您提到的最后一个更改不太管用。看见无论您首先选择什么,它都会显示详细信息(即,如果您选择“否”,它将显示详细信息)。
$('.show').bind('change',function() {
$(this).siblings('.toggle').toggle($(this).val());
});