下面的HTML显示了单选按钮,下面的DIV显示了根据每个单选按钮的单击功能将显示的内容:
<ul>
<li id="6"><input type="radio" name="sell" value="sell" id="sell" />Sell</li>
<li id="7"><input type="radio" name="rent" value="rent" id="rent" />Rent</li>
<li id="8"><input type="radio" name="donate" value="donate" id="donate" />Donate</li>
</ul>
<div id="selltab">
eeeeeeeee
</div>
<div id="renttab">
ffffffffff
</div>
<div id="donatetab">
ggggggggg
</div>
下面显示的JavaScript函数工作正常,在单击其他单选按钮时隐藏内容,但问题是所有单选按钮都显示为选中,即使div中的其他内容当时没有选中。
需要取消选中其余两个单选按钮,当选择其中一个时,是否可能?
$(document).ready(function(){
$('#selltab').hide();
$('#renttab').hide();
$('#donatetab').hide();
$('input[name=sell]').click(function(){
$('#selltab').toggle();
$('#renttab').hide();
$('#donatetab').hide();
$('rent').checked = false;
$('donate').checked = false;
})
$('input[name=rent]').click(function(){
$('#renttab').toggle();
$('#selltab').hide();
$('#donatetab').hide();
$('sell').checked = false;
$('donate').checked = false;
})
$('input[name=donate]').click(function(){
$('#donatetab').toggle();
$('#selltab').hide();
$('#renttab').hide();
$('rent').checked = false;
$('sell').checked = false;
})
});
3条答案
按热度按时间pftdvrlh1#
是的,当然可以.你可以用两种方法做
第一个是你可以很容易地使组(设置相同的名称)单选按钮如下:
第二个是使用另一个JavaScript函数来解决您的问题,如下所示:
cl25kdpy2#
在这种情况下,您实际上要做的是让所有单选按钮共享相同的名称。单选按钮的默认行为是,一个组中只能同时选择一个。
就像你现在做的那样,只要使用
因为你已经给了他们id。这样你就不会有问题取消选中任何单选按钮,因为默认情况下,只有一个将被选中在任何时候。
6rvt4ljy3#
尝试更换您的
$('rent').checked = false;
带有
$("#rent").attr("checked", false);
并且在必要时对其它2个类似。
您希望通过ID访问它,因此使用#