I know I can get the "value" attribute of a radiobutton but I'm finding it strangely difficult to get the text of the radiobutton.
Consider the example below. It has 3 radiobuttons and tries to alert the value of the first radio button, which is "red" and then trys to alert the value of the radiobutton, "apple" but that fails.
Getting the text of almost any element can be done with elem.childNodes[0].nodeValue. Why doesn't it work for radiobuttons?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" >
<head>
<title>Radio Buttons</title>
<style type="text/css">
</style>
<script type="text/javascript">
function start(){
var rblist = document.getElementsByName("colors");
var elem = rblist[0];
alert(elem.value); // PRINTS "RED"
alert(elem.childNodes[0].nodeValue); //THROWS ERROR
}
</script>
</head>
<body onload="start();">
<input type="radio" name="colors" value="red" checked>apple</input>
<input type="radio" name="colors" value="blue">sky</input>
<input type="radio" name="colors" value="green">grass</input>
</body>
</html>