readonly: attributo HTML

L'attributo booleano readonly, quando presente, rende l'elemento non mutabile, il che significa che l'utente non può modificare il controllo.

Se l'attributo readonly è specificato su un elemento di input, poiché l'utente non può modificare l'input, l'elemento non partecipa alla convalida del vincolo.

L'attributo readonly è supportato dagli input <input type="text"><input type="search"><input type="url"><input type="tel"><input type="email"><input type="password"><input type="date"><input type="month"><input type="week"><input type="time"><input type="datetime-local"> <input type="number"> e dagli elementi <textarea>. Se presente su uno qualsiasi di questi tipi ed elementi di input, la pseudo classe ::read-only corrisponderà. Se l'attributo non è incluso, la pseudo classe :read-write corrisponderà.

L'attributo non è supportato, non è rilevante per <select> o per i tipi di input che non sono già modificabili, come checkbox e radio o che non possono, per definizione, iniziare con un valore, come il tipo di input del file . range e color , poiché entrambi hanno valori predefiniti. Inoltre, non è supportato su nascosto in quanto non ci si può aspettare che un utente compili un modulo nascosto. Né è supportato su nessuno dei tipi di pulsanti, incluso image.

Quando un input ha l'attributo readonly, la pseudo-classe :read-only si applica anche ad esso. Al contrario, gli input che supportano l' readonlyattributo ma non hanno l'attributo impostato corrispondono alla pseudo-classe :read-write.

Interazioni di attributi

La differenza tra disabled ed readonly è che i controlli di sola lettura possono ancora funzionare e sono ancora attivabili, mentre i controlli disabilitati non possono ricevere lo stato attivo e non vengono inviati con il modulo e generalmente non funzionano come controlli finché non vengono abilitati.

Poiché un campo di sola lettura non può avere il suo valore modificato da un'interazione dell'utente, required non ha alcun effetto sugli input con l'attributo readonly anche specificato.

L'unico modo per modificare dinamicamente il valore dell'attributo readonly è tramite uno script.

Convalida dei vincoli

Se l'elemento è di sola lettura, il valore dell'elemento non può essere aggiornato dall'utente e non partecipa alla convalida del vincolo.