html设置value可视为假,html li标签设置value诡异的问题

设置li的value为一串数字,结果获取的时候不是原来的值.

直接上代码:

给li标签设置value

window.onload = function () {

console.log('onload');

var li22 = document.getElementById('myLi');

li22['setAttribute']('value', ('90000786062'));

console.log(li22);

console.log(li22.getAttribute('value'));

}

在IE 11中的结果:

A161821189-194145.jpg

控制台打印:

A161823267-194145.jpg

原因:

ul 中的li定义的value会自动转换为int.数值,ie 浏览器下大于int最大值,显示int最大值,其他浏览器显示为0.而且无论你定义什么值,都会转int.默认为1,例如value=中文。所以如果你想要实现正确取值,就需要换一个li属性例如自定义属性time.或者改一种实现标签元素,例如div.都可以

解决方法:

不使用value,而使用其他名称

给li标签设置value

window.onload = function () {

console.log('onload');

var li22 = document.getElementById('myLi');

li22['setAttribute']('value2', ('90000786062'));

console.log(li22);

console.log(li22.getAttribute('value2'));

}

IE11 :

A161825329-194145.jpg

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值