我無法讓我的變量乘以。出於某種奇怪的原因,我的變量值是從輸入字段中調用的,但我甚至試圖給它們默認值,如下所示,它仍然不起作用。JavaScript乘法
var conMin = document.getElementById('cMin').value;
var serLev = document.getElementById('sLev').value;
var noFrames = 1800;
var noFramesTot = noFrames*24;
var coresTest = document.getElementById('coresintest').value;
var estCoreHours = 200;
var art = 20;
var coreHrs = noFrames * coresTest * art;
alert(coreHrs);
我的警報無法正常工作,但是如果我把乘法這個作品,然後刪除art
變量。我已經嘗試將parseInt()
添加到每個變量只有現在它返回NaN。如果我從等式中刪除art
它工作正常。我coresTest
是在輸入定義:
var coresTest = document.getElementById('coresintest').value;
我得到的錯誤是,我的功能正在工作,而不是輸出任何東西。我的整個頁面的源代碼是。
<html>
<head>
<script>
function functionCalc() {
// Variables
var conMin = document.getElementById('cMin').value;
var serLev = document.getElementById('sLev').value;
var noFrames = 1800;
var noFramesTot = noFrames*24;
var coresTest = document.getElementById('coresintest').value;
var estCoreHours = 200;
var art = document.getElementById('art');
var coreHrs = parseInt(noFrames) * parseInt(coresTest) * parseInt(art);
// Hours Minutes Seconds variables
var avgframerndrtme = document.getElementById('avgrndrtime').value;
var secfunc = avgframerndrtme/3600;
var secmin = avgframerndrtme/60;
var hourfunc = avgframerndrtme/1;
var conMin = document.getElementById('cMin').value;
var art_value = art.options[art.selectedIndex].value;
var switchart = document.getElementById('switchart').value;
// Workout if Average render time is in minutes seconds etc...
switch(art_value)
{
case "minutes":
document.getElementById("switchart").value=secmin.toFixed(3);
break;
case "seconds":
document.getElementById("switchart").value=secfunc.toFixed(3);
break;
case "hours":
document.getElementById("switchart").value=hourfunc;
break;
}
var total = coreHrs * serLev;
document.getElementById("estDiv").innerHTML=total;
document.getElementById("corehours").innerHTML=coreHrs;
}
</script>
</head>
<body>
<h1>Content/SLA</h1>
corehours:
<input type='text' id='cHours' onKeyUp="functionCalc()" /><br />
content minutes:
<input type='text' id='cMin' onKeyUp="functionCalc()" /><br />
Service level:
<select onBlur="functionCalc()" onClick="functionCalc()" id="sLev">
<option value="0.84" id="mega">Priority Mega</option>
<option value="0.67" id="urgent">Priority Urgent</option>
<option value="0.56" id="standard">Standard Job</option>
<option value="0.28" id="scheduled">Scheduled Job</option>
<option value="0.14" id="lightpass">Light Pass Job</option>
</select><br />
number of frames (Optional):
<input type='text' id='noFrames' value="1800" /><br />
---------------------------------------------------------------------------------
<br />
<h1>render time</h1>
<!-- avg frame render hours:
<input type='text' id='renHours' onKeyUp="functionCalc()" /><br /> -->
average render time:
<input type='text' id='avgrndrtime' onKeyUp="functionCalc()" onBlur="functionCalc()" />
<select onChange="functionCalc()" onBlur="functionCalc()" id="art">
<option value="hours" id="hours">Hours</option>
<option value="minutes" id="mins">Minutes</option>
<option value="seconds" id="secs">Seconds</option>
</select><br />
cores in test :<input type='text' id='coresintest' onKeyUp="functionCalc()" />
<br /><br />
---------------------------------------------------------------------------------<br />
<h1>Estimate </h1>
estimated Total : <div id="estDiv"></div><br>
estimated core hours : <div id="corehours"></div>
<br><br><br><br><br><br><br><br><br><br><br><br>AVERAGE FRAME RENDER TIME
<input type='text' id='switchart' onKeyUp="functionCalc()" />
<br />
</body>
</html>
你會得到什麼?如果是'NaN',則首先嚐試解析'coresTest'。 – pimvdb 2011-05-23 14:54:08
你有什麼錯誤?它溢出了嗎? – carlosfigueira 2011-05-23 14:54:21