我有一个用户可以在其中编辑数据的字段。我使用focus()
将光标直接放置到适当的TextField
上。但是,它始终位于单词的开头。
这是我的方法:
xtype: 'textfield',
value: record ? record.get('value') : '',
listeners: {
afterrender: function(field) {
field.focus(false);
}
}
有没有一种方法可以将光标放在现有单词的末尾?
答案 0 :(得分:1)
如果将选择区域更改为文本字段的末尾,则将获得相同的结果。使用setSelectionRange()
来完成。您可以这样:
xtype: 'textfield',
value: record ? record.get('value') : '',
listeners: {
afterrender: function(field) {
field.focus(false);
var len = field.value.length;
field.inputEl.dom.setSelectionRange(len,len);
}
}
答案 1 :(得分:0)
添加field.selectionStart = field.selectionEnd
应该可以解决问题。
xtype: 'textfield',
value: record ? record.get('value') : '',
listeners: {
afterrender: function(field) {
field.focus(false);
field.selectionStart = field.selectionEnd;
}
}