2010-06-15 15 views
7

Ich versuche gerade, den allerersten Buchstaben von einer Eingabe groß zu schreiben.Wie kann ich den ersten Buchstaben einer Eingabe groß schreiben?

Hier ist, was ich habe versucht:

fieldset input 
{ 
    text-transform:capitalize; 
} 

Aber es funktioniert nicht so, wie ich will, wie jedes Wort groß geschrieben wird.

Ich habe versucht auch diese:

fieldset input:first-letter 
{ 
    text-transform:uppercase; 
} 

Aber es scheint < Ein-/> nicht mit ersten Buchstaben funktioniert ...

Wie auch immer, Sie haben keine Vorstellung davon, wie zu erreichen Sie dies ohne Javascript (oder so wenig wie möglich)?

+0

Interessanterweise Ihr: first-letter CSS tut für einen Textbereich zu arbeiten. Ordentlich. – Joshua

Antwort

2

Nicht möglich. Es ist möglich mit Javascript, oder indem Sie nur das erste Wort innerhalb einer Spanne setzen.

+4

Sie können keine "span" Elemente in einem Eingabetextfeld haben. –

6

JS: str.charAt(0).toUpperCase();

+0

Danke, ich werde das mit einem jQuery Selector dann versuchen. – Safirio

+0

@Safirio, sollte funktionieren. – Babiker

0
$('#INPUT_ID').keyup(function(){ 
    if($(this).val().length>0 && $(this).val().length<5){ 
     $(this).val($(this).val().charAt(0).toUpperCase()+$(this).val().substr(1)); 
    } 
}); 

nicht 1 Länge == verwenden können, da es nicht, wenn Benutzer tippt schnell funktioniert.

0

Sie müssen

<fieldset> 
      <legend>DATA...</legend> 
      <input type="text" class="inputName" placeholder="Введите имя"> 

ohne <input />

dann in CSS:

fieldset input { 
    text-transform: capitalize; 
} 
Verwandte Themen