webForumDet fria alternativet

aktiv textruta

8 svar · 157 visningar · startad av KalsongCesar

KalsongCesarMedlem sedan mars 2001339 inlägg
#1

Kan jag på ngt sätt lägga in tecknet "-" efter att användaren har matat in 4 st tecken i en textruta. Jag såg ett script som gjorde att man hoppade till en ny ruta efter 4 tecken så det borde ju inte vara omöjligt att fixa in ett tecken..
Tacksam för hjälp

------------------
//
Kick yer boots off and come on in
//

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#2

Jag är ingen JavaScriptsexpert, men så här skulle man ju kunna skiva. :)

<script language="JavaScript" type="text/javascript">
<!--
function addLine() {
	var f = document.frm;
	if (f.foo.value.length == 4) {
		f.foo.value = f.foo.value + "-";
	}
}
//-->
</script>

<form name="frm">
<input type="text" name="foo" onkeyup="addLine();">
</form>

------------------
/Erik
www.juhlin.nu /sk8files/ /mp2d/

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#3

Förresten, byta ut onkeyup mot onkeypress. Då blir det rätt även om personen håller inne en tangent. :)

------------------
/Erik
www.juhlin.nu /sk8files/ /mp2d/

KalsongCesarMedlem sedan mars 2001339 inlägg
#4

Tack för hjälpen.. jag hade ett som var liknande, men med din hjälp såg jag itt lilla fel.
Tack å bock

------------------
//
Kick yer boots off and come on in
//

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#5

Funderade på en sak. Mitt script krånglar till det lite. Försöker man radera text så stannar det vid "-". Kan man på något sätt kolla om det är "bakåtsudd" tangenten som trycks ner? Någon som vet?

------------------
/Erik
www.juhlin.nu /sk8files/ /mp2d/

KalsongCesarMedlem sedan mars 2001339 inlägg
#6

hehe.. mitt med. Men jag har en fördrjöjning på 200 milisekunder som gör det möjligt att sudda om man är snabb som f**

=)

------------------
//
Kick yer boots off and come on in
//

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#7

Inte särskilt bra lösning för då fungerar ju inte det där med att man kan hålla inne en tangent. :l

------------------
/Erik
www.juhlin.nu /sk8files/ /mp2d/

KalsongCesarMedlem sedan mars 2001339 inlägg
#8

Dä ä sant, då måste vi lösa det med bakåtknappen på nge vis. Om du lyckas så får du gärna dela med dig.
Jag använder detta till en datumformaterare, då kan jag kolla tex att månden inte överstiger värdet 12.. och om så e så hoppar den tebax två steg så att man får mata in igen.

if (formular.prata.value.substring(5,7)> 12){
document.formular.prata.value = formular.prata.value.substring(0,5)
}

man kanske kan kolla om ascivärdet av suddknappen stämmer och på så sätt tilldela värdet på textrutan till vad det var och ett mindre.

jag är för dålig på javascript för att veta vad som går och inte går.

------------------
//
Kick yer boots off and come on in
//

KalsongCesarMedlem sedan mars 2001339 inlägg
#9

Japp.. då var det fixat, fråga mig inte hur men så här blev det.

function dformat() {
if (formular.prata.value.length == 4) {
	document.formular.prata.value = formular.prata.value.substring(0,4) + '-';
}
if (formular.prata.value.length == 7) {
	if (formular.prata.value.substring(5,7) > 12) {
document.formular.prata.value = formular.prata.value.substring(0,5)
}
else{
document.formular.prata.value = formular.prata.value.substring(0,7) + '-';
}
}
if (formular.prata.value.length >= 10) 
{
if (formular.prata.value.substring(8,10) > 31) {
document.formular.prata.value = formular.prata.value.substring(0,8)
}
else
{
formular.prata.value = formular.prata.value.substring(0,10)
}
}
}

Det fungerar att sudda.
anropar med onkeypress.

------------------
//
Kick yer boots off and come on in
//

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