javascript – 第二次单击时取消选中单选按钮

前端之家收集整理的这篇文章主要介绍了javascript – 第二次单击时取消选中单选按钮前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有很多单选按钮从我的数据库获取值,如果设置为“1”,我会选中单选按钮.

如果选中单选按钮,并且用户再次单击它,我仍然希望能够清除此按钮.有没有人有想法?

$radio1从数据库获取数据,将为0,1或2

@H_502_9@dio1" type="radio"PHP if($radio1==1){echo " checked";} ?>> dio2" type="radio"PHP if($radio1==2){echo " checked";} ?>>

Varun Malhotra的答案略有修改
我改变了2行代码,对我来说效果更好.但总的来说,Varun的答案是完美的!

@H_502_9@$('input[type="radio"]').click(function(){ var $radio = $(this); // if this was prevIoUsly checked if ($radio.data('waschecked') == true) { $radio.prop('checked',false); $radio.data('waschecked',false); } else { $radio.prop('checked',true); $radio.data('waschecked',true); } // remove was checked from other radios $radio.siblings('input[type="radio"]').data('waschecked',false); });
最佳答案
我建议添加一个自定义属性来跟踪每个无线电的先前状态,如下所示:

@H_502_9@$(function(){ $('input[name="rad"]').click(function(){ var $radio = $(this); // if this was prevIoUsly checked if ($radio.data('waschecked') == true) { $radio.prop('checked',false); $radio.data('waschecked',false); } else $radio.data('waschecked',true); // remove was checked from other radios $radio.siblings('input[name="rad"]').data('waschecked',false); }); });

您还需要将此属性添加到最初检查的无线电标记

@H_502_9@dio" name="rad" id="Radio0" checked="checked" data-waschecked="true" />

JSFIDDLE DEMO

更新:

@H_502_9@ $(function(){ $('input[name="rad"]').click(function(){ var $radio = $(this); // if this was prevIoUsly checked if ($radio.data('waschecked') == true) { $radio.prop('checked',false); $radio.data('waschecked',false); } else $radio.data('waschecked',true); // remove was checked from other radios $radio.siblings('input[type="radio"]').data('waschecked',false); }); });

但请确保您没有其他无线电组可以使用,否则您必须提供一些属性来指定这些按钮,就像我之前关注的名称一样.

猜你在找的MySQL相关文章