当价值变化时,Caret走向极左

时间:2016-09-27 11:21:01

标签: reactjs

当我将输入字段中的值(58.10)更改为(58.1)时,一旦删除" 0",光标就会落后于5。我希望它能在#34; 1"。

之后

阵营:

// Props
var data = [
  {unit_amount: 58.10, id: 1},
  {...},
  {unit_amount: 25.99, id: 3},
]

_valueChange(i, e){
  e.preventDefault();
  var obj = this.props.data;
  var num = obj.find(p => i === p.id);

  num.unit_amount = e.target.value;
},

// Render

var lineItems = this.props.data.map(function(l){
  return(
   <tr key={l.id}>
    <input type="number" value={l.unit_amount} onChange={this._valueChange.bind(this, l.id)} />
   </tr>
  )
})

值改变正常,但是一旦我按下退格键一次,光标(&#34;管道&#34;)就会向左移动。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

可以在设置值后设置光标位置,只需找到字符串的长度并将光标位置设置为字符串的长度。

查看此帖子,了解您要查找的API。 Get caret position in HTML input?