Как я могу преобразовать текстовую строку в верхний регистр в Opera? - PullRequest
1 голос
/ 23 марта 2010

Я не могу найти, как преобразовать текстовую строку MultiBox в Uppercase в Opera?Я использую «text-transform: uppercase», но он работает только с IE

Ответы [ 2 ]

1 голос
/ 30 марта 2010

Hm. Я думаю, что Opera по умолчанию отключила преобразование текста: заглавными буквами на INPUT и TEXTAREA, потому что некоторые важные страховые сайты по ошибке назвали свои вводные данные заглавными, и люди сочли очень печальным и запутанным вводить только заглавные буквы. :) (Для этого конкретного стиля и в то время Opera была единственным браузером, выполняющим инструкцию преобразования текста. Все могло измениться.).

Для удобства использования я бы порекомендовал преобразовать в верхний регистр на стороне сервера или когда пользователь завершит набор (например, в событии onchange).

(Кроме того, я ожидаю, что CSS будет влиять только на то, как все отображается на экране. Поэтому, даже если вы создадите TEXTAREA с помощью text-transform: upper-case, а текст будет отображаться в верхнем регистре, когда пользователь печатает Я бы ожидал, что браузер отправит текст на сервер в нижнем регистре, если это введено пользователем.)

1 голос
/ 23 марта 2010

Похоже, вы нашли ошибку в Opera, потому что она работает в IE 8 и Firefox 3.6. Возможное решение - это JavaScript:

<script type="text/javascript">
    function setUpperCase(textarea) {
        textarea.value = textarea.value.toUpperCase();
    }
</script>
...
<textarea onkeyup="setUpperCase(this)"></textarea>
...