<script type="text/javascript"> // 說明: 用 Javascript 驗證表單(form)中的單選(radio)值 // 作者: CodeBit function getRadioValue(radio) { if (!radio.length && radio.type.toLowerCase() == 'radio') { return (radio.checked)?radio.value:''; } if (radio[0].tagName.toLowerCase() != 'input' || radio[0].type.toLowerCase() != 'radio') { return ''; } var len = radio.length; for(i=0; i<len; i++) { if (radio[i].checked) { return radio[i].value; } } return ''; } </script>
radio 和 checkbox 一樣,都是 name 相同,值有多個,在獲取 radio 值的時候,我們不能按照普通文本框 .value 的方式,而是要判斷哪個被選中了。
當一組 radio 有多個選項時,我們可以通過循環,以 radio[i] 的方式判斷某個選項是否被選中來返回值,但是當一組 radio 只有一個選項時,獲取值的方式又有變化,代碼中以 return (radio.checked)?radio.value:''; 這樣的方式直接判斷是否選中,然后返回對應值。