在前端页面输入ipv4地址的场景很常见,实现方式不一样,编码难易程度不一样,实现效果不一样,用户体验也不一样。
最简单的是4个input框,中间隔着3个点,要做下输入检查,确保每个编辑框里输入的是0到255之间的数字,是否允许带前导0视用户要求而定。这种方式编码简单,没有更多的css和js要求,用户体验一般,输入ip地址前面的一段数字后,要按键盘table键或者鼠标点击才能到后一段继续输入。
网上有很多朋友用vue做出来了ipv4地址输入框,不过需要导入vue组件,其他的js实现方式估计也能搜到一些,这样可以在html里直接用,不过我个人不推荐在这个ip地址栏的地方使用别人造的轮子,主要原因是要引入非必要的js代码,可能存在一些bug或者安全风险。
我比较推荐的方式就是普通的input框,对输入内容进行正则表达式匹配检查。不需要冗长的奇技淫巧的代码,一行代码搞定。
..
regipv4=/^((1?[1-9]?\d|[1-2][0-4]\d|25[0-5])\.){3}(1?[1-9]?\d|[1-2][0-4]\d|25[0-5])$/;
...
if (regipv4.test($("#inputip").val())==false) { alert("IP地址格式错"); }
...