日期:2014-05-16 浏览次数:20450 次
function SumNum()
{
var sumValue;
s1=eval($("#score1").val());//score1是id,取值方法还有别种
s2=eval($("#score2").val());
s3=eval($("#score3").val());
s4=eval($("#score4").val());
s5=eval($("#score5").val());
s6=eval($("#score6").val());
s7=eval($("#score7").val());
s8=eval($("#score8").val());
if (isNaN(s1))//数字验证
{s1=0;}
if (isNaN(s2))
{s2=0;}
if (isNaN(s3))
{s3=0;}
if (isNaN(s4))
{s4=0;}
if (isNaN(s5))
{s5=0;}
if (isNaN(s6))
{s6=0;}
if (isNaN(s7))
{s7=0;}
if (isNaN(s8))
{s8=0;}
sumValue = s1+s2+s3+s4+s5+s6+s7+s8;
$("#scoreSum").attr("value",sumValue);//求和赋值
}
?
<tr> <td>企业规模</td> <td>注册资金</td> <td>5</td> <td class="queryCaseTd"><input type="text" name="SCORE1" id="score1" size="30" maxlength="30" onkeyup="value=value.replace(/[^\d\.]/g,'');SumNum();"/></td> </tr> <td class="queryLabelTd"><label>评价总得分(自动算得):</label></td> <td class="queryCaseTd"><input type="text" name="SCORE_SUM" id="scoreSum" size="30" maxlength="30" /></td>
? 要实现评分的自动算分使用了jquery,数字范围验证待加。。。
其中
eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。
eval(string)
| string | 必需。要计算的字符串,其中含有要计算的 JavaScript 表达式或要执行的语句。 |
通过计算 string 得到的值(如果有的话)。
该方法只接受原始字符串作为参数,如果 string 参数不是原始字符串,那么该方法将不作任何改变地返回。因此请不要为 eval() 函数传递 String 对象来作为参数。
如果试图覆盖 eval 属性或把 eval() 方法赋予另一个属性,并通过该属性调用它,则 ECMAScript 实现允许抛出一个 EvalError 异常。
?
JavaScript isNaN() 函数isNaN() 函数用于检查其参数是否是非数字值。
isNaN(x)
?
| x | 必需。要检测的值。 |
如果 x 是特殊的非数字值 NaN(或者能被转换为这样的值),返回的值就是 true。如果 x 是其他值,则返回 false。
isNaN() 函数可用于判断其参数是否是 NaN,该值表示一个非法的数字(比如被 0 除后得到的结果)。
如果把 NaN 与任何值(包括其自身)相比得到的结果均是 false,所以要判断某个值是否是 NaN,不能使用 == 或 === 运算符。正因为如此,isNaN() 函数是必需的。
?一些其他别人的方法
<html>
<head>
<title> New Document </title>
<script language="javascript">
<!--
function add(var1,var2,var3)
{
var result = 0;
if(!isNaN(var1))
result += var1;
if(!isNaN(var2))
result += var2;
if(!isNaN(var3))
result += var3;
return result;
}
-->
</script>
</head>
<body>
<form name="form1">
<input type="text" name="text1" onblur="document.form1.text4.value=add(parseFloat(document.form1.text1.value),parseFloat(document.form1.text2.value),parseFloat(document.form1.text3.value));">
<input type="text" name="text2" onblur="document.form1.text4.value=add(parseFloat(document.form1.text1.value),parseFloat(document.form1.text2.value),parseFloat(document.form1.text3.value));">
<input type="text" name="text3" onblur="document.form1.text4.value=add(parseFloat(document.form1.text1.value),parseFloat(document.form1.text2.value),parseFloat(document.form1.text3.value));">
<input type="text" name="text4" >
</form>
</body>
</html>
?