vue----获取el-input光标插入文本

insertText(insertTxt) {
    // 获取el-input中的input元素
    let elInput = this.$refs.targetIn.$el.firstElementChild;
    // 获取el-input的值
    let txt = elInput.value;
    // 做插入前做长度校验(如果有这个需要的话)
    if (txt.length + value.length > 64) {
        return;
    }
    // 获取选区开始位置
    let startPos = elInput.selectionStart;
    // 获取选区结束位置
    let endPos = elInput.selectionEnd;
    if (startPos === undefined || endPos === undefined) return;

    // 将文本插入光标位置
    this.subject = txt.substring(0, startPos) + insertTxt + txt.substring(endPos);
    // 将光标移至文本末尾
    elInput.focus();
    elInput.selectionStart = startPos + insertTxt.length;
    elInput.selectionEnd = startPos + insertTxt.length;
}

 

Vue3中,el-input没有光标可能是因为element-ui是封装的组件,el-input属于自定义标签,无法触发键盘事件。解决这个问题的方法是上.native原生事件修饰符。 另外,如果你想在el-input插入文本并设置光标位置,可以使用insertText方法。首先获取el-input中的input元素,然后获取el-input的值,并进行插入前的长度校验。接下来,获取选区的开始位置和结束位置。最后,将要插入文本插入到选区的位置,并将光标移动到文本末尾。 在Vue项目中,还可以使用Vue CLI或其他工具来初始化项目,并生成基础的目录结构和配置文件。在页面开发中,可以使用Vue框架进行前端开发,通过HTTP请求(如axios)调用后端的接口,并处理返回的数据。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [vueel-input绑定键盘按键(按键修饰符)](https://download.csdn.net/download/weixin_38741950/13128463)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [vue----获取el-input光标插入文本](https://blog.csdn.net/qq_32107121/article/details/105506023)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [vue整合SSM项目实战](https://download.csdn.net/download/m0_55755339/88241603)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值