ich möchte mit js einen teil eines input textfeldes nicht editierbar machen.
dh in dem feld steht der username drinen und dahinter kann er was schreiben, aber den usernamen soll er nicht rauslöschen können.
Das wird so nicht funktionieren, ist ja auch nicht vorgesehen.
Kannst maximal mittels JS beim verlassen des Feldes den Wert überprüfen und ggf. ändern.
Oder nach dem Absenden mit PHP prüfen und falls notwendig ändern.
Die PHP-Variante ist dabei zu bevorzugen, da sie nicht vom User beeinflusst werden kann.
Eine Kombination beider Varianten zwecks optischem Eindruck ist natürlich auch nicht schlecht.
Kannst natürlich auch noch 2 Textfelder so formatieren und positionieren, dass sie wie eines aussehen. Das eine readonly, das zweite ganz normal.
Man könnte die Darstellung natürlich noch über CSS beeinflussen (Nicht in allen Browsern, der IE verweigert nämlich in älteren Versionen die Attributselektoren).
input[readonly]{
background-color:#FFFFFF;
color:#000000;
}
Aber wenn man solche Kunstgriffe unbedingt braucht, dann muss man eben mit div. Unzulänglichkeiten rechen und diese akzeptieren.
naja es ist eben ein feld wo der user reinschreiben kann was er gerade macht.
dh zuerst steht im feld “was machst du gerade?” und wenn der user reinklickt änderts sich in "{username} "
dann kann der user schreiben, was er gerade macht. damit das ganze etwas einheitlicher wird soll er den usernamen nicht rauslöschen können. außerdem wird er dann quasi beieinflusst wirklich zu schreiben was er gerade macht und zb nicht schreibt “das wetter ist schön”
Der Name kann doch auch dekoriert neben der Eingabe stehen.
Wenn man den wirklich mit dem Formular mitsenden will, kann
man ihn ja auch mit ‘hidden’ zusätzlich in ein input stecken.
Ist jedenfalls unklar, weshalb etwas in einem veränderbaren
Eingabefeld stehen soll, was nicht verändert werden soll.
Zudem, wenn es mit einem Formular verschickt wird, ist das
manipulierbar, wenn es nicht unabhängig davon dem Namen
zugeordnet werden kann - etwa über eine Sitzung.