webForumDet fria alternativet

Tab i textarea?

6 svar · 227 visningar · startad av Gislaved.net

Gislaved.netMedlem sedan juni 20001 274 inlägg
#1

Kan man fixa till så att man kan skriva in tabbar i en Textarea utan att bli förflyttad till nästa fält?

------------------
Gislaved.net
"Tänk på vad du säger så att du inte säger vad du tänker."

tohaMedlem sedan dec. 1999698 inlägg
#2

Det går nog att fixa men man kan inte visa tabb-tecken i elementet. Om man byter ut tabbtecknen till någon kod vid ett onKeyDown-event och sedan omvandlar alla koder till tabbar vid submittandet. Men då måste man föra över värdet till en text-sträng. Typ såhär:

<textarea id="aaa" onKeyDown="return checkKeyState(this)"></textarea>

<font size="1" face="Verdana, Arial, Helvetica, sans-serif">

<script>

function tabCheck(oItm) {
    if (event.keyCode == 9) {
        oItm.value += "{  }";
        return false;
    }
    return true;
}

function onSubmit(oFrm) {
    var sText = oFrm.aaa.value;
    sText = sText.replace(/{  }/g, "\t");
}

</script>

</font>

------------------
/ Torbjörn Hansson, webbutvecklare
Endero Sverige

[Redigerat av toha den 20 okt 2000]

Gislaved.netMedlem sedan juni 20001 274 inlägg
#3

Tack så mycket.

Det verkar lite krångligt, men det är nog för att jag inte är så hemma på JavaScript.

------------------
Gislaved.net
"Tänk på vad du säger så att du inte säger vad du tänker."

petergrennanetMedlem sedan dec. 1999273 inlägg
#4

Hmm. toha
Det funkade inte för mig.

"checkKeyState is not defined. "

------------------
¬ peterbe.com¬

tohaMedlem sedan dec. 1999698 inlägg
#5

Fel av mig. Råkade skriva fel metodanrop. Det skall vara:

<textarea id="aaa" onKeyDown="return tabCheck(this)"></textarea>

Märk väl att din form-tagg måste ha ett onSubmit-event. Ex:

<form onSubmit="onSubmit(this)">
...
</form>

------------------
/ Torbjörn Hansson, webbutvecklare
Endero Sverige

petergrennanetMedlem sedan dec. 1999273 inlägg
#6

kewlt fett!

Tips! Om man lägger till focus() på textarea fältet så
slipper man använda musen.

function tabCheck(oItm) {    
	if (event.keyCode == 9) {        
		oItm.value += "{  }";        
		oItm.focus();
		return false;    
	}    
	return true;
}

------------------
¬ peterbe.com¬

[Redigerat av petergrennanet den 28 okt 2000]

Gislaved.netMedlem sedan juni 20001 274 inlägg
#7

Om man vill ha texten infogad på det ställe markören befinner sig på då? Går det...?

------------------
Gislaved.net
"Tänk på vad du säger så att du inte säger vad du tänker."

129 ms totalt · 3 externa anrop · cache AV · v20260731051352-full.56cc9887
0 ms — hämta statistik (cache)
0 ms — hämta forumlista (cache)
126 ms — hämta tråd, inlägg och bilagor (db)