如果按钮已经检查过,我需要帮助取消选中或检查相同的单选按钮?我有jquery函数,用于启用或禁用其他单选按钮,如果已经检查我现在要添加一些用于检查或取消选中相同单选按钮的功能?
(function ($) {
$(document).ready(function () {
$('input:radio').click(function(){
var $inputs = $('input:radio')
if($(this).is(':checked')){
$inputs.not(this).prop('disabled',true);
}else{
$inputs.prop('disabled',false);
}
})
});
})(jQuery);
<input type="radio" value="Test1" />Test1
<input type="radio" value="Test2" />Test2
<input type="radio" value="Test1" />Test1
<input type="radio" value="Test2" />Test2
答案 0 :(得分:2)
只需将disabled
替换为checked
:
$input.prop("checked", false);
或this
元素:
this.checked = false;
但是,如果您要查找可以选中和取消选中的表单元素,则可能需要input type="checkbox" />
。
答案 1 :(得分:0)
$inputs.filter(':checked').prop('checked', false);
答案 2 :(得分:0)
我认为您需要使用复选框而不是单选按钮取消选中已选中的内容:
<input class="checkDisable" type="checkbox" value="Test1" />Test1
<input class="checkDisable" type="checkbox" value="Test2" />Test2
<input class="checkDisable" type="checkbox" value="Test3" />Test3
<input class="checkDisable" type="checkbox" value="Test4" />Test4
(function ($) {
$(document).ready(function () {
$('input:checkbox.checkDisable').change(function(){
var $inputs = $('input:checkbox.checkDisable')
if($(this).is(':checked')){
$inputs.not(this).prop('disabled',true);
}else{
$inputs.prop('disabled',false);
$(this).prop('checked',false);
}
})
});
})(jQuery);
答案 3 :(得分:0)
尽管回答为时已晚,但可以帮助其他人
我尝试过这种解决方案。
对我来说很好!
$("input[type='radio'].myClass").click(function(){
var $self = $(this);
if ($self.attr('checkstate') == 'true')
{
$self.prop('checked', false);
$self.each( function() {
$self.attr('checkstate', 'false');
})
}
else
{
$self.prop('checked', true);
$self.attr('checkstate', 'true');
$("input[type='radio'].myClass:not(:checked)").attr('checkstate', 'false');
}
})
答案 4 :(得分:0)