webForumDet fria alternativet

Ändra färg på input-ruta - har lite problem med det

JavaScript

20 svar · 810 visningar · startad av haider · sida 2 av 2

Frågan, av haider

Tjena, Jag har ett script enligt följande. function changecolor(id) { document.getElementById(id).style.backgroundColor="#FF8282"; } \</script\> Följande skriver jag för att trigga igång scriptet: onKeyDown="changecolor(this.id)" onChange="changecolor(this.id)" Problemet är följande; Även om jag trycker ctrl, tex för att kopiera (ctrl c förstås) så blir den röd. Jag vill att den bara ska reage

Läs frågan i sin helhet →
Medlem sedan jan. 2003956 inlägg
#21

Nitro, du är otroligt kreativ. En sådan lösning är ju perfekt, för skulle man undoa eller ändra tillbaks värdet ska man inte behöva ha ett rött textfält som distraherar en och få en att undra vad det var man ändrade där.

Däremot förutsätter din lösning att man har ett textfält i och med ID, inte sant?
I mitt fall har jag många fler.

Jag får stryka möjligheten att baka in båda i en funktion, så jag nappar på din första lösning. Den har däremot ingen origValue kontroll. Det skulle troligen kräva att man modifierar setOrigValue() till att inte leta efter getElementByID("field") utan att den istället kör en koll på 'this'. Fungerar det ihop med getElementById?
Eller så behöver man kanske inte köra onload="setOrigValue();" i bodyn, utan snarare varje gång man fokuserar på ett input-fält. Tänker jag rätt?

257 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)