我想在表单字段中输入数字,并使其旁边的字段自动更新为数字的2倍。如果没有复选框,我无法弄清楚该如何做。
我有这个:
var val = document.form1.field1.value
if (/^\s*$/.test(val)) {
}
else {
document.form1.field2.value = val * 2
}
我认为这将是检查field1是否具有任何值(否则,我只是希望这些字段显示占位符),并且如果确实具有一个值,它将使field2 = field1 * 2
我的目标是在输入field1的数字时更新field2。
谢谢您的帮助!
最佳答案
添加一个keyup处理程序,并将值解析为数字(始终是字符串),然后乘以2:
<form id="form1">
<input id="field1" onkeyup="fn(this)" />
<input id="field2" />
</form>
<script type="text/javascript">
function fn(elem) {
var val = parseFloat(elem.value) * 2 || '';
document.getElementById('field2').value = val;
}
</script>
FIDDLE