Вопрос

В Adobe Flex 3 это вызывает проблемы.

textArea.setSelection( textArea.htmlText.indexOf( 'testString' ), textArea.htmlText.indexOf( 'testString' ) + 10 );

Это ставит курсор в неправильное место, потому что IndexOF учитывает теги HTML, а SetSelection - нет.

Кто-нибудь знает, как это сделать? Простой способ - это /<[^>]*> /g регулярное выражение, но это не выполняет работу каждый раз.

Помогите, пожалуйста!

Эндрю

Это было полезно?

Решение

Попробуйте вместо этого:

textArea.setSelection( textArea.text.indexOf( 'testString' ), textArea.text.indexOf( 'testString' ) + 10 );

Используя свойство «текст» вместо «htmlText», вы удаляете теги HTML. Кроме того, я бы не использовал 2 индексных поиска, это не эффективно. Попробуй это:

var string:String = 'testString';
var index:int = textArea.text.indexOf(string);
textArea.setSelection(index, index + string.length);
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top