选择单选按钮后,如何根据所选单选按钮显示输出?

时间:2015-09-01 07:25:39

标签: javascript html dom radio-button

如何在选择特定的单选按钮后在<div><label>上显示某些内容,例如我有一组单选按钮

Interest Value
o 3%
o 5%
o 7%

Amount: 1,450.00

金额的值将根据所选的单选按钮而改变。在javascript(没有jquery)上执行此操作的正确方法是什么?什么是最好的DOM事件?

2 个答案:

答案 0 :(得分:3)

您只需听取其点击事件即可。

查看从here on jsfiddle

无耻复制的代码OnChange event handler for radio button (INPUT type="radio") doesn't work as one value
<form name="myForm">
    <input type="radio" name="myRadios"  value="3" >3%</value>
    <input type="radio" name="myRadios"  value="5" >5%</value>
    <input type="radio" name="myRadios"  value="7" >7%</value>
</form>
Amount: <span id="amount"></span>

<script>
var amountField = document.getElementById('amount');
var rad = document.myForm.myRadios;
var prev = null;
for(var i = 0; i < rad.length; i++) {
    rad[i].onclick = function() {
        console.log(this.value);
        if(this !== prev) {
            prev = this;
            amountField.textContent = 1000+1000*this.value/100;
        }
    };
}
</script>

答案 1 :(得分:0)

这取决于您何时想要了解该事件。

如果您想立即了解,请点击。 IE在调用处理函数之前更新了checked状态,我认为其他浏览器也可以。你可能想要仔细检查这个事实。

如果您只是在事情发生之前需要知道,您可以使用更改。在选定的单选按钮失去焦点之前,IE不会触发更改事件。 FF / chrome /其他人可能会在不改变焦点的情况下触发事件,但我相信IE在这种情况下实际上是正确的。

礼貌:@lincolnk

link:Stackoverflow