我正在为会议的与会者填写在线表格。每个人输入他们参加某个会话的分钟数。会议记录在表单字段中转换为Credit Hours:
<div class="col3">
<form onsubmit="return false" oninput="document.getElementById('MK1').innerHTML = (Math.floor((MC06.value/50) * 2) / 2).toFixed(1)">
<input name="MC06" id="MC06" onkeyup="disableField06()" type="number" min="0" max="50" placeholder="0-75 minutes" step="any" />
</div>
<div class="col1">
<output name="MK1" id="MK1">0</output>
</form>
</div>
如果您想知道,disableField函数会禁用同一时段的另一个会话。没有问题。由于我在这里找到了一个脚本,因此占位符也没有问题。
当用户点击“提交”按钮时,主题类别的小时数(在这种情况下为MK)将在函数中收集:
var MK1 = document.getElementById("MK1").value;
var MK2 = document.getElementById("MK2").value;
var MK3 = document.getElementById("MK3").value;
var MK4 = document.getElementById("MK4").value;
var MK5 = document.getElementById("MK5").value;
var MK6 = document.getElementById("MK6").value;
document.getElementById("MK").value = parseFloat(MK1) + parseFloat(MK2) + parseFloat(MK3) + parseFloat(MK4) + parseFloat(MK5) + parseFloat(MK6);
最后,受试者及其每个服务员的总小时数显示在底部的表格中。
<div class="table-row">
<div class="col2">Marketing: </div>
<div class="col4"><input type = "text" id = "MK" name = "MK"></div>
</div>
这在Chrome中运行良好,但在IE9(公司浏览器)中,我获得了NaN。我该如何解决这个问题?
答案 0 :(得分:0)
我修好了。
我更改了
这样的行的代码var MK1 = document.getElementById("MK1").value;
到
var MK1 = document.getElementById("MK1").innerHTML;
这适用于从输入字段回调的数据。总计所有科目的学分时间的代码仍返回NaN。我将这些行改回了.value,它有效!看起来IE9的.value范围比其他浏览器更窄。