textarea cursor 值不能动态修改
发布于 6 年前 作者 rcheng 16174 次浏览 来自 问答

textarea 的cursor属性 画面初始渲染时有效。动带修改时光标位置没有变动(iOS上)。

3 回复

目的:textarea中输入两个空格的时候自动替换成两个全角空格 然后光标保持原来编辑的位置。

目前状态: 光标移动到文本最后了

<view class=“container”>

<form bindsubmit=“postContent” >

<textarea placeholder=“form 中的 textarea” name=“textarea” focus=‘true’  cursor="{{cursor}}" value="{{pageContent}}" bindinput=“inputHandler”/>

<button form-type=“submit”> 提交 </button>

<button  > 返回 </button>

</form>

</view>

Page({

/**

  * 页面的初始数据

  */

data: {

postId:’’,//文章ID

pageIndex:’’, //文章中页面index

pageContent:’’,

cursor:null //光标位置

},

/**

  * 数据录入过程中的处理

  * 文本格式化,

  */

inputHandler: function (e) {

var content = e.detail.value;

var cursor = e.detail.cursor;

var patt1 = new RegExp("  ");//两个半角空格

if (patt1.test(content)) {

content = content.replace(’  ', ’  ');//换成两个全角空格

this.setData({

pageContent: content,

cursor: cursor

});

}

}}

你好,请具体描述问题出现的流程,并提供能复现问题的简单代码示例。

回到顶部