这可能是一个愚蠢的简单问题,但我卡住了。jQuery单选按钮 - 只选一个?
我创建了一个包含多个复选框的表单,当点击复选框时,它会将每个复选框的值作为逗号分隔列表传递给隐藏的输入字段。它工作得很好。但由于一些问题,我现在不得不改变我的代码,以便它使用单选按钮 - 所以没有逗号分隔的值列表,只是一次一个。
我改变了代码,将其交换出单选按钮和它的正常工作除了两件事情:1)它不是单选按钮(每次我选择按钮时之间切换,它会保持选定为我选择别人)和2)它将添加到列表中,而不是返回选定的单个选项。换句话说,它仍然像一个复选框,除了视觉上,它是圆的,有一个点。 LOL
这是我的代码至今:
jQuery(document).ready(function($) {
$(':radio').click(function() {
var radio = $(this);
var text = $('input[name="cat"]');
if(radio.is(':checked')) {
text.val(text.val() + radio.val());
//alert(text.val());
} else {
text.val(function() {
$(this).val().replace(radio.val(),"");
});
}
});
});
所以当我取消对“警戒”行,我可以看到什么过去了,它只是添加到列表中,而不是用新值取代。任何人都知道如何修复以上所以只有一个选项可以被选中并通过? (以上代码工作赫然为复选框的事情,虽然我真的觉得我从这里上面的代码中的某个地方,但我不记得在那里。!)
编辑:这里是一个解决问题和工作代码一种享受(谢谢你们所有:)) - 也许它会在未来帮助别人。
`jQuery(document).ready(function($) {
$(':radio').change(function() {
var radio = $(this);
var text = $('input[name="cat"]');
if(radio.is(':checked')) {
text.val(radio.val());
//alert(text.val());
} else {
text.val(function() {
$(this).val().replace(radio.val(),"");
});
}
});
});`
请告诉我标记的单选按钮的? – ryudice 2011-04-27 14:11:25
你是否组合了单选按钮?给出所有相同的名字... – 2011-04-27 14:15:44
你为什么要检查它是否被检查。点击时总是检查收音机。 – ChrisThompson 2011-04-27 14:17:22