webForumDet fria alternativet

onkeydown i Firefox?

1 svar · 281 visningar · startad av bwcMikke

bwcMikkeMedlem sedan okt. 2004159 inlägg
#1

Jag har ett gäng inputfält där jag vill att saker skall hända när jag skriver något i ett fält.
Så här ser koderna ut:

<input type="text" size="50" name="edtName" id="edtName" runat="server" onKeyDown="mark(this);" />

Funktionen mark() ser ut så här:

	function mark(edtBox){
		key=window.event.keyCode;
		//alert(key);
		if (key>40 || key==8 || key==32){
			edtBox.style.background="#FFFFCC";	
			form1.cmdSave.disabled="";
		}
	}

I IE funkar detta klockrent men i FF så händer ingenting. Fältet byter inte färg och sparaknappen förblir mörk.

Vet någon varför?

bwcMikkeMedlem sedan okt. 2004159 inlägg
#2

"Sök och du skall finna"

Jag löste problemet själv:

<input type="text" size="50" name="edtName" id="edtName" runat="server" onKeyDown="mark(event,this);" />

respektive

	function mark(event, edtBox){

       event = event || window.event;
		key=event.keyCode;
		if (key>40 || key==8 || key==32){
			edtBox.style.background="#FFFFCC";	
			document.form1.cmdSave.disabled="";
		}
	}

Notera att jag fuskat när jag skulle disabla genom att inte ange "document." framför "form1." Detta funkar alltså i IE men inte i FF

..och tänk om man kom ihåg javascriptkonsolen i FF lite tidigare :-(

134 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)