我试图通过java脚本中的函数将值从一个组合框和文本输入字段分配给另一个组合框。我的函数在控制台中给出了NaN值。请指导我哪里出错了。 这是代码
function myCalculatedFunction(){
var num1;
var num2;
var total;
num1=document.calcu.cc_package.value;
num2=document.calcu.cc_unitP.value;
total=num1*num2;
document.getElementById("output").text=total;
}
<form class="center" name="calcu">
<fieldset>
<label for="sel1" class="text"> Rental Mining Server- CC Package:</label>
<select class="form-control styleSelect" id="sel1" name="cc_package" >
<option>1,000.0000000</option>
<option>2</option>
<option>3</option>
<option>4</option>
</select>
<br>
<br>
<div class="form-group">
<label for="CC_UnitPrice" class="text"> Buy- CC Unit Price in USD</label>
<input type="text" class="form-control" id="CC_UnitPrice" name="cc_unitP" onchange="myCalculatedFunction()">
<label for="CC_PackagePrice" class="text"> CC Package Price in :</label>
<select class="form-control styleSelect" id="CC_PackagePrice">
<option id="output"> 0</option>
<option>2</option>
<option>3</option>
<option>4</option>
</select>
</div>
</fieldset>
</form>
答案 0 :(得分:0)
无需在select ,
的值中应用1000.0000
。
只需申请普通号码即可。 申请parseInt()它会解析你的字符串。
最后应用任何一个计算 Math.function
function myCalculatedFunction(){
var num1;
var num2;
var total;
num1=document.calcu.cc_package.value;
num2=document.calcu.cc_unitP.value;
//total=num1*num2 its also working
total=Math.abs(parseInt(num1)*parseInt(num2));
document.getElementById("output").text=total;
}
&#13;
<form class="center" name="calcu">
<fieldset>
<label for="sel1" class="text"> Rental Mining Server- CC Package:</label>
<select class="form-control styleSelect" id="sel1" name="cc_package" >
<option>1000.0000000</option>
<option>2</option>
<option>3</option>
<option>4</option>
</select>
<br>
<br>
<div class="form-group">
<label for="CC_UnitPrice" class="text"> Buy- CC Unit Price in USD</label>
<input type="text" class="form-control" id="CC_UnitPrice" name="cc_unitP" onchange="myCalculatedFunction()">
<label for="CC_PackagePrice" class="text"> CC Package Price in :</label>
<select class="form-control styleSelect" id="CC_PackagePrice">
<option id="output"> 0</option>
<option>2</option>
<option>3</option>
<option>4</option>
</select>
</div>
</fieldset>
</form>
&#13;
答案 1 :(得分:0)
我认为js代码存在错误。
尝试使用此代码:
function myCalculatedFunction(){
var num1;
var num2;
var total;
num1=parseInt(document.calcu[1].value);
num2=parseInt(document.calcu[2].value);
total=num1*num2;
document.getElementById("output").text=total;
}