今天碰到一个问题,在js比较两个数值的大小,按照正常的逻辑写死活都不起作用。
有问题的代码如下:
Js代码
- function chkNum(){
- var appcount = $("#appcount").val();
- var intencount = $("#intencount").val();
- var unemployment = $("#unemployment").val();
- if(appcount == null || appcount == ""){
- alert("应聘人数不能为空!");
- return false;
- }
- if(intencount == null || intencount == ""){
- alert("初步达成录用人数不能为空!");
- return false;
- }
- if(intencount < appcount ){
- alert("初步达成录用人数应小于企业应聘人数!");
- $("#intencount").val("");
- return false;
- }
- if(unemployment > appcount){
- alert("其中失业人数应小于企业应聘人数!");
- $("#unemployment").val("");
- return false;
- }
- };
这个问题纠结了好久,上网查了下js居然有个eval函数
eval函数定义和用法
eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。
修改后的代码
Js代码
- function chkNum(){
- var appcount = $("#appcount").val();
- var intencount = $("#intencount").val();
- var unemployment = $("#unemployment").val();
- if(appcount == null || appcount == ""){
- alert("应聘人数不能为空!");
- return false;
- }
- if(intencount == null || intencount == ""){
- alert("初步达成录用人数不能为空!");
- return false;
- }
- if(eval(intencount) > eval(appcount) ){
- alert("初步达成录用人数应小于企业应聘人数!");
- $("#intencount").val("");
- return false;
- }
- if( eval(unemployment) > eval(appcount)){
- alert("其中失业人数应小于企业应聘人数!");
- $("#unemployment").val("");
- return false;
- }
- };
时间: 2024-10-08 22:43:01