2014-11-19 5 views
0

나는 전화 회의 참석자를 위해 온라인 양식을 작성하고 있습니다. 각 사람은 특정 세션에 참석 한 시간 (분)을 입력합니다. 회의록과 같이 양식 필드에서 학점으로 변환 : 당신이 궁금해하는 경우IE9에서 계산 된 값을 표시하는 방법

<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 기능은 동일한 시간 슬롯에 대한 다른 세션을 사용할 수 없습니다. 거기에 문제 없습니다. 자리 표시 자에 문제가 없습니다. 여기에서 찾은 스크립트 덕분입니다.

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); 

마지막으로, 주제와 부수적 인 당 총 시간 테이블에 표시됩니다 : 사용자가 제출 버튼을 클릭 할 때 주제 분류 (이 경우 MK)에 대한

근무 시간은 함수에 수집됩니다 하단에.

 <div class="table-row"> 
      <div class="col2">Marketing: </div> 
      <div class="col4"><input type = "text" id = "MK" name = "MK"></div> 
     </div> 

크롬에서는 잘 작동하지만 IE9 (회사 브라우저)에서는 NaN이 표시됩니다. 이 문제를 어떻게 해결할 수 있습니까?

+1

"바이올린"을 만들 수 있습니까? –

+1

또한 HTML이 잘못되었습니다. – mplungjan

답변

0

해결했습니다.

나는 다시 입력 필드에서 호출 된 데이터 일

var MK1 = document.getElementById("MK1").innerHTML; 

var MK1 = document.getElementById("MK1").value; 

같은 라인의 코드를 변경했습니다. 모든 주제의 신용 시간을 합산하는 코드는 여전히 NaN을 반환했습니다. 나는 그 라인을 .value로 다시 바꿨고, 효과가있었습니다! IE9는 다른 브라우저보다 .value의 범위가 더 좁은 것처럼 보입니다.

관련 문제