這可能是一個愚蠢的簡單問題,但我卡住了。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