Quando un modulo web viene scritto nel browser, il browser si ricorda quali sono i valori iniziali sono di una casella di testo di input. vale a dire. quando riceve HTML come questo:Impostazione di un valore "predefinito" della casella di immissione testo HTML. Ripristina il valore quando si fa clic ESC
<input type="text" value="something">
Il browser ricorda "qualcosa" come valore iniziale/predefinito. Quando l'utente inizia a digitare su di esso, quindi tocca ESC, il browser ripristina il campo al valore iniziale (o vuoto se inizialmente era vuoto).
Tuttavia, quando si crea una casella di testo programmaticamente, colpendo ESC sembra sempre vuota la casella, anche se creo con un valore di default in questo modo:
$('<input type="text" value="something">')
Il browser non conta questo come un valore predefinito e non ripristina quando si preme ESC. Quindi la mia domanda è, c'è un modo per creare una casella di testo nel codice e in qualche modo assegnargli un valore predefinito, quindi il tasto ESC funziona come se il browser l'avesse ricevuto nel documento HTML?
L'attributo PlaceHolder nella risposta di Yoshi è ora ampiamente disponibile. Vorrei usare questo approccio contro questo approccio javascript. Quando in origine ho risposto a questa domanda nel 2012, IE8 e IE9 erano ancora ampiamente utilizzati e non supportavano i segnaposto. – mrtsherman