function dd(){
var a, b;
a=document.getElementById("dj").value;
b=document.getElementById("sl").value;
document.getElementById("hj").value=a+b;
}//这是JS 部分
下面的表单部分
<tr><td>输入单价 </td> <td> <input type="text" name="password" id="dj" size="15" ></td></tr>
<tr><td>输入数量</td> <td> <input type="text" name="password" id="sl" size="15" ></td></tr>
<tr><td>合计</td> <td> <input type="text" name="text" id="hj" size="15" onfocus="dd()" >
单价和数量输入的是数值但是合计这行实现的值不是数值相加,是两个字符串相连。
咋解决啊。。
我自己补充哈算了,我已近找到解决办法了
function dd(){
var a, b;
a=document.getElementById("dj").value*1;
b=document.getElementById("sl").value*1;//在后面乘个1就解决问题了。
document.getElementById("hj").value=a+b;
javascript主要有以下三种数据类型转换方式:
转换函数:parseInt()和parseFloat()分别将值转换成整数和浮点数。
强制类型转换:Boolean(value)、Number(value)、String(value)将给定的值分别转换成逻辑值、数字(整数或浮点数)及字符串。
弱类型自动转换:字符串与数字进行数学操作符运算时,字符串会自动转为数字。
实例演示:将文本框的值转化成数值型
var a = document.getElementById("num1").value;