完美解决input[type=number]无法显示非数字字符的问题


Posted in Javascript onFebruary 28, 2017

在移动端webview实现的页面中,有数字的地方必须使用input type="number"类型的input,否则触发后的键盘为全键盘,而非数字键盘。但另外的一个问题是,input 为 type="number" 类型的无法显示非数字字符,比如:12/23中/。

只能采取另外的思路来解决,比如:显示的时候用非number类型的input或其它元素,当触发onfocus后,利用js 动态修改为number类型。

<input class="pg-page-num" type="text" name="" value="34/233" id="pageNum">
<input type="hidden" name="" value="25" id="totalPage">

<script type="text/javascript">
  var oPage = document.querySelector('#pageNum'),
    oTotal = document.querySelector('#totalPage'),
    sOldVal = '';

  oPage.addEventListener('focus', function () {
    this.type = 'number';
    sOldVal = this.value;
  }, false);

  oPage.addEventListener('blur', function () {
    var sVal = this.value;
    this.type = 'text';
    if (sVal != sOldVal) {
      this.value += '/' + oTotal.value;
    }
  }, false);
</script>

以上这篇完美解决input[type=number]无法显示非数字字符的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript与CSS复习(《精通javascript》)
Jun 29 Javascript
使用apply方法实现javascript中的对象继承
Dec 16 Javascript
关注jquery技巧提高jquery技能(前端开发必学)
Nov 02 Javascript
详解AngularJS中自定义过滤器
Dec 28 Javascript
Bootstrap插件全集
Jul 18 Javascript
js实现简易聊天对话框
Aug 17 Javascript
JS Input里添加小图标的两种方法
Nov 11 Javascript
angular 实时监听input框value值的变化触发函数方法
Aug 31 Javascript
Vue利用Blob下载原生二进制数组文件
Sep 25 Javascript
解决Vue 给mapState中定义的属性赋值报错的问题
Jun 22 Javascript
前端使用crypto.js进行加密的函数代码
Aug 16 Javascript
详解jQuery的核心函数和事件处理
Feb 18 jQuery
canvas红包照片实例分享
Feb 28 #Javascript
详解本地Node.js服务器作为api服务器的解决办法
Feb 28 #Javascript
jquery操作select取值赋值与设置选中实例
Feb 28 #Javascript
JS使用面向对象技术实现的tab选项卡效果示例
Feb 28 #Javascript
基于cookie实现zTree树刷新后展开状态不变
Feb 28 #Javascript
js中Number数字数值运算后值不对的解决方法
Feb 28 #Javascript
canvas绘图不清晰的解决方案
Feb 28 #Javascript
You might like
PHP 解决utf-8和gb2312编码转换问题
2010/03/18 PHP
php利用腾讯ip分享计划获取地理位置示例分享
2014/01/20 PHP
简单的php缓存类分享     php缓存机制
2014/01/22 PHP
PHP 8新特性简介
2020/08/18 PHP
PHPstorm启用自动换行的方法详解(IDE)
2020/09/17 PHP
Extjs学习过程中新手容易碰到的低级错误积累
2010/02/11 Javascript
js 小数取整的函数
2010/05/10 Javascript
Extjs中DisplayField的日期或者数字格式化扩展
2010/09/03 Javascript
JQuery的$和其它JS发生冲突的快速解决方法
2014/01/24 Javascript
使用命令对象代替switch语句的写法示例
2015/02/28 Javascript
js实现星星打分效果的方法
2020/07/05 Javascript
easyui Droppable组件实现放置特效
2015/08/19 Javascript
vue.js 左侧二级菜单显示与隐藏切换的实例代码
2017/05/23 Javascript
详解vue2.0的Element UI的表格table列时间戳格式化
2017/06/13 Javascript
基于jQuery实现的单行公告活动轮播效果
2017/08/23 jQuery
jQuery图片查看插件Magnify开发详解
2017/12/25 jQuery
Vue2.5 结合 Element UI 之 Table 和 Pagination 组件实现分页功能
2018/01/26 Javascript
通过webpack引入第三方库的方法
2018/07/20 Javascript
javascript中关于类型判断的一些疑惑小结
2018/10/14 Javascript
微信小程序实现页面下拉刷新和上拉加载功能详解
2018/12/03 Javascript
JavaScript代码调试方法实例小结
2019/01/05 Javascript
js计算最大公约数和最小公倍数代码实例
2019/09/11 Javascript
用jQuery实现抽奖程序
2020/04/12 jQuery
[53:21]2014 DOTA2国际邀请赛中国区预选赛5.21 DT VS LGD-CDEC
2014/05/22 DOTA
Python for Informatics 第11章之正则表达式(四)
2016/04/21 Python
python操作 hbase 数据的方法
2016/12/18 Python
python树莓派红外反射传感器
2019/01/21 Python
基于Tensorflow批量数据的输入实现方式
2020/02/05 Python
5款实用的python 工具推荐
2020/10/13 Python
python使用Windows的wmic命令监控文件运行状况,如有异常发送邮件报警
2021/01/30 Python
css3实现input输入框颜色渐变发光效果代码
2014/04/02 HTML / CSS
美国从事品牌鞋类零售的连锁店:Famous Footwear
2016/08/25 全球购物
银行服务感言
2014/03/01 职场文书
软件测试专业推荐信
2014/09/18 职场文书
本溪水洞导游词
2015/02/11 职场文书
Java8中接口的新特性使用指南
2021/11/01 Java/Android