function count(){
//获取第一个输入框的值
var sum1 = document.getElementById('txt1').value;
//获取第二个输入框的值
var sum2 = document.getElementById('txt2').value;
//获取选择框的值
var selVal = document.getElementById('select').value;
//获取结果文本框对象的值
var fruit = document.getElementById('fruit');
//存储结果的变量
var result = "";
//判断第一个/第二个文本框内容为空就弹出提示框,并退出整个函数。
if( sum1 =="" || sum2 =="" ){
alert('文本框没有输入数字,不能计算。')
fruit.value = '';
return
}
//获取通过下拉框来选择的值来改变加减乘除的运算法则
switch(selVal){
case '+':
result = parseFloat(sum1) + parseFloat(sum2);
break;
case '-':
result = parseFloat(sum1) - parseFloat(sum2);
break;
case '*':
result = parseFloat(sum1) * parseFloat(sum2);
break;
default:
result = parseFloat(sum1) / parseFloat(sum2);
}
//设置结果输入框的值
fruit.value = result;
}
我只实现了判断文本框内容为空会弹出提示框,请问有没有不用正则就能判断文本框输入内容为数字的方法?
题主可以用typeof 运算符来返回一个用来表示表达式的数据类型的字符串。
typeof[()expression[]] ;
expression 参数是需要查找类型信息的任意表达式。
说明
typeof 运算符把类型信息当作字符串返回。typeof 返回值有六种可能: "number," "string," "boolean," "object," "function," 和 "undefined."
typeof 语法中的圆括号是可选项
举个例子:
function aFunction(iNum1) { if (typeof iNum1 == "number" ) { alert("number"); } if ( typeof iNum1 == "string") { alert("string"); } }
希望对你有用。
input 输入文本框获取的值都是string 类型 你可以用parseInt 或者 parseFloat 转成 number 类型 或者设置input type = "number"