收藏
回答

textarea cursor 值不能动态修改

问题模块
API和组件

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

最后一次编辑于  2017-11-22  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

3 个回答

  • Special
    Special
    2017-11-22

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

    2017-11-22
    赞同
    回复
  • 宝文首
    宝文首
    2017-11-22

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

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

    2017-11-22
    赞同
    回复
  • 宝文首
    宝文首
    2017-11-22

    <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

    });


    }

    }}


    2017-11-22
    赞同
    回复