Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Длинна input`a (https://javascript.ru/forum/dom-window/13469-dlinna-input%60.html)

DmitryOpalev 29.11.2010 22:39

Длинна input`a
 
Здравствуйте!
У меня есть input, в которое заносят числа... как сделать так, чтобы длинна input`a подгонялась по ширине (кол-во символов = длине) ?

Octane 29.11.2010 22:53

<input size=1>
<script>
document.getElementsByTagName("input")[0].onkeyup = function () {
    this.size = this.value.length || 1;
};
</script>

DmitryOpalev 29.11.2010 23:12

А если будет несколько input`ов, то надо писать
...document.getElementsByTagName("input")[`x`].onkeyup...

А вместо x номер input`a?

monolithed 30.11.2010 00:53

Цитата:

Сообщение от DmitryOpalev
А вместо x номер input`a?

Необязательно

<script type="text/javascript">
window.onload = function(){
    input = document.getElementsByName("test"), i = input.length;
    while(i--){
        input[i].onkeyup = function(){
            this.size = this.value.length || 1;
        };
    }
};
</script>
<input name="test" type="text" value="text1" />
<input name="test" type="text" value="text2" />
<input name="test" type="text" value="text3" />


Недавно, кстати обсуждали похожую тему. Там можете посмотреть как несколько обработчик можно повесить (в вашем случае возможно понадобится еще onchange, для того чтобы учитывать события если текст вставляется из буфера).


Часовой пояс GMT +3, время: 11:39.