关于el表达式的值传到js中类型变为Number的解决方案

上次练习了一个小项目,发现了一个很奇怪的问题。

后台传到jsp页面的值(18位数字身份证),用el表达式接受到以后,用作删除,可谁想到传到js代码中最后一位就变为了0。(本身js学的不是很好)

<a href="javascript:del(${customers.identity})" class="btn btn-danger btn-xs">删除</a>

<script type="text/javascript">
    
        function del(identity) {
            alert(identity);
            var  flag= window.confirm("是否确定删除");

            if(flag){

                window.location.href="${path}/test/dele?identity="+identity;
            }
        }
    
    </script>

el表达式存的是身份证号码,可是到了js里就变成了现在这样,最后一位变为0,这究竟是怎么回事呢?

弄了好久才弄明白,jsp页面的值的类型是String,而传到js函数的类型是js的Number类型,Number类型的有效数值是17位,其余的位数自动补零,所以才会造成这种效果。

那要怎么修改呢?那就是在执行js函数之前先把类型变为js的String类型,传过去自然就是String类型了。在参数内加上单引号即可。

<a href="javascript:del('${customers.identity}')" class="btn btn-danger btn-xs">删除</a>

 

谢谢大家!

 

转载于:https://www.cnblogs.com/gpeiqi/p/9090796.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值