JSFiddle - React, Tailwind, and code Playground
by termi
HTML
<form name="myform">
<input type="radio" name="foo" value="10"> foo
<input type="radio" name="foo" checked value="30"> bar
</form>
<script>
;(function () {
var form = document.createElement("form")
, _NodeList_prototype_
;
form.innerHTML = "<input type=radio name=t value=1><input type=radio checked name=t value=2>";
if(form.t["value"] === 2)return;
_NodeList_prototype_ = form.t.constructor.prototype;
Object.defineProperty(_NodeList_prototype_, "value", {
get: getRadioNodeListValue,
set: setRadioNodeListValue,
configurable: true
});
function getRadioNodeListValue() {
if(!this[0] || !this[0]["form"])return;
var k = this.length
, el
;
while(el = this[--k]) {
if (el.checked) {
return el.value;
}
}
}
function setRadioNodeListValue(value) {
if(!this[0] || !this[0]["form"])return;
var k = this.length
, el
;
while(el = this[--k]) {
if (el.checked) {
el.value = value;
return el.value;
}
}
}
}());
</script>
JavaScript
var form = document.forms.myform;
var radio = form.elements.foo;
alert(radio.value);