2012-12-14 1 views
10

У меня есть текстовое поле (установленное только для чтения), и мне нужно, чтобы его содержимое было выбрано для удобства копирования/вставки, когда оно получает фокус. Используя приведенный ниже код, только кажется, что быстро выберите текст, а затем по какой-то причине отмените его выбор.Выбирает весь текст в 'readonly' <input />, когда он получает фокус

HTML

<input id='thing' type='text' value='some text' readonly='readonly' />​ 

JavaScript

document.getElementById('thing').onfocus = function(){ 
    this.select(); 
};​ 

Fiddle: http://jsfiddle.net/cfqje/

+4

Duplicate? http://stackoverflow.com/questions/4067469/selecting-all-text-in-html-text-input-when-clicked – elclanrs

+0

Сценарий работает для меня в Firefox. IE8. Какой браузер не работает для вас? –

+0

@John Да, мой плохой. Наверное, я забыл принять это. У меня есть сейчас. –

ответ

16

Это, кажется, работа вокруг:

<input id='thing' type='text' value='some text' onclick="this.select()" readonly='readonly' />​

Я думаю, проблема в том, что фокус не правильно работать как вход только для чтения.

+0

Встроенный скрипт. Ту ту. – ProfK

0

Теперь вы можете использовать CSS. С user-select: all; весь текст будет выбран при нажатии на элемент.

+0

Мне это очень нравится, просто имейте в виду, что опция _ «all» _ может быть ошибкой в ​​Safari, согласно [MDN] (https://developer.mozilla.org/en-US/docs/Web/CSS/ пользователь выберите # Синтаксис). – jhaskell

 Смежные вопросы

  • Нет связанных вопросов^_^