问题多多多 2022-03-06 16:40 采纳率: 33.3%
浏览 38
已结题

vue-quill-editor 如何实现只输入数字

vue-quill-editor 如何实现只输入数字
需要实现一个只输入数字的功能 粘贴的时候也只能粘贴上数字
希望大家指点

  • 写回答

2条回答 默认 最新

  • CSDN专家-showbo 2022-03-06 17:13
    关注

    一定要用富文本编辑器,不考虑格式(可以换行)的情况下,可以添加text-change事件替换掉非数字及换行字符的内容,示例如下

    img

    <!-- Include stylesheet -->
    <link href="https://cdn.quilljs.com/1.3.6/quill.snow.css" rel="stylesheet">
    
    <!-- Create the editor container -->
    <div id="editor" style="height:300px">
    </div>
    <!-- Include the Quill library -->
    <script src="https://cdn.quilljs.com/1.3.6/quill.js"></script>
    
    <!-- Initialize Quill editor -->
    <script>
        function setCuror() {
            var p = quill.container.querySelector('.ql-editor'),
                s = window.getSelection(),
                r = document.createRange();
            r.selectNodeContents(p)
            r.collapse(false)
            s.removeAllRanges();
            s.addRange(r);
    
        }
    
        var quill = new Quill('#editor', {
            theme: 'snow'
        });
        quill.on('text-change', function (delta, oldDelta, source) {
            if (source == 'user') {//用户输入数据才对数据进行过滤
                quill.setText(quill.getText().replace(/[^\d\.\n]/g, ''));
                setTimeout(setCuror,50);//需要延时设置光标位置
            }
        });
    </script>
    
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月15日
  • 已采纳回答 3月7日
  • 创建了问题 3月6日

悬赏问题

  • ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
  • ¥70 PlayWright在Java上连接CDP关联本地Chrome启动失败,貌似是Windows端口转发问题
  • ¥15 帮我写一个c++工程
  • ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法
  • ¥15 关于smbclient 库的使用
  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?