jsp 获取两个数值直接用大于、小于比较大小和算加法,不是按数字大小比较,JSP都是以字符串在操作

今天在马来项目:jsp开发过程中遇到个问题....

jsp获取数值,比较大小和算加法都是以字符串的方式在比较和计算,加法直接拼接,代码如下

<tr>
<td align="right" width="40%" style="height:20px;">
我当前房卡数:
</td>
<td colspan="2" align="left"  style="height:20px;">
<span id="myRoomCardNum">${operatRC }</span>
</td>
</tr>
<tr>
<td align="right" width="40%" style="height:20px;">
出售数量:
</td>
<td colspan="2" align="left"  style="height:20px;">
<input name="" type="text" id="sellNumOne" class="put" maxlength="12" />
<span id="sellNumOneMSG" class="red"></span>
</td>
</tr>

下面是获取值:

var myRoomCardNum = $('#myRoomCardNum').html();
var sellNum = $.trim($('#sellNumOne').val());
if(sellNum == null || sellNum == ""){
$('#sellNumOneMSG').html('不能为空');
return false;
}
var reg = /^[1-9]\d*$/;
if(isNaN(sellNum)){
$('#sellNumOneMSG').html('必须为数字');
return false;
}
if(! reg.test(sellNum)){
$('#sellNumOneMSG').html('必须为正数');
return false;
}
if(sellNum-myRoomCardNum>0){
$('#sellNumOneMSG').html('你的房卡数不足');
return false;
}

原因:

jsp开发中获取数据默认都是字符串,也就是字符串的优先级比较高,当对数据做比较计算加法时,它都是先以字符串的形式进行对应的操作!

解决办法:

比较大小通过减法来实现!

加法计算-----对获取的数值进行一个转换,如:console.log(parseInt(myRoomCardNum)+parseInt(sellNum));


分析问题和解决方法有误或不全欢迎指教!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值