Frågan 19 okt. 2000 08:40 #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."
toha Medlem sedan dec. 1999 707 inlägg 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]
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."
Hmm. toha
Det funkade inte för mig.
"checkKeyState is not defined. "
------------------
¬ peterbe.com ¬
toha Medlem sedan dec. 1999 707 inlägg 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
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]
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."