簡體   English   中英

jQuery的Javascript獲取單選按鈕的價值

[英]Javascript to jQuery Get value of Radio button

在成功完成Javascript應用程序后,我正在嘗試使其對jQuery更友好。 但是,當我嘗試獲取單選按鈕的值時,如下所示:

 // relavent declarations: 

var radio = $("[name='buttons']");  // 4 radio buttons
var val = '';
var score = 0;


for( var q in radio ) {
if (radio[q].checked)
    val = radio[q].val();
}
     if(val === correct) {
    score++;
}

我正在嘗試做的是使它在純Javascript中的等效形式如下所示:

for( var q in radio ) {
if (radio[q].checked)
    val = radio[q].value;
}
     if(val === correct) {
    score++;
}

我的Javascript控制台不斷向我顯示錯誤“未捕獲的TypeError:對象#沒有方法'val'”是什么問題?

嘗試這個

$('input:radio').each(function(){
   if($(this).is(':checked'))
     var value = $(this).val();
});

radio[q]將為您提供一個原始的DOM節點對象,您可能需要關聯的jQuery對象,因此請嘗試radio[q].eq(q)

請參閱: http//api.jquery.com/eq/

試試下面的代碼:

$(":radio:checked").each(function(){
    val = $(this).val();
})

我認為您正在寫一些有答案的內容,如果用戶檢查正確,那么他會得到一個分數

建議1)給所有復選框起相同的名稱,以便僅可以選中一個

 <input type="radio" name="Answer" />

建議2)從myForm獲取選定的復選框值

 $('input[name=radioName]:checked', '#myForm').val()

我想你想要的那么近。

 $(document).ready(function() {
                var radio = $("input[type='radio']");
                for (var i in radio) {
                    i = parseInt(i);
                    var r = radio[i];
                    if ($(r).prop("checked") == true) {

                        console.log($(r).val());
                    }
                }

            })
 })

添加了值的讀出

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM