做项目这么久,每次遇到要限制input框数据时,都是好一阵纠结,究竟在哪限制比较好?
情况1:输入数据的时候,不做限制,只有在点击确定的时候提醒用户
问题:交互感觉不好,可以随意输入,明明限制输入数字,效果如下:
情况2:和情况1差不多,但是在blur时候处理数据或提示用户
问题:如果点击确定才做验证,有可能先执行提交click事件再执行blur的情况
情况3:在输入的时候就做限制
问题:改变用户输入,光标有时不在用户原来输入的位置,而且触发时机要注意,是keyup?change?
个人感觉情况3的交互是最好的,而keyup一般情况下还可以,但是有种情况却会出现bug,如下图: