16. januar 2008 - 09:36
Der er
11 kommentarer og 1 løsning
Skriv et automatisk alias ud fra input
Jeg skal have lavet to input felter. I det ene indtaster man f.eks. Rød Ålborg I det andet input felt skal den så mens man skriver, så skrive roed-aalborg Er det noget der er til at lave? /Kristian Sørensen
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
16. januar 2008 - 09:48
#1
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript"> <!-- function alias(fEle) { tmp = fEle.value.toLowerCase() tmp = tmp.replace("æ","ae") tmp = tmp.replace("ø","oe") tmp = tmp.replace("å","aa") tmp = tmp.replace(" ","-") fEle.form.text2.value = tmp } //--> </SCRIPT> <form name="myForm" method="post" action="<%= scriptname %>"> <input type="Text" name="text1" value="" onkeyup="alias(this);" onchange="alias(this);"><br> <input type="Text" name="text2" value=""> </form>
16. januar 2008 - 09:49
#2
Hovsa. Du skal ikke have <%= scriptname %> med: <form name="myForm" method="post" action="enSide.htm">
16. januar 2008 - 10:13
#3
Virker ganske fint - men kun med det første ø eller først mellemrum, ved andet tegn af et der er brugt før skriver den bare det samme.
16. januar 2008 - 10:24
#4
Så bruger vi da bare regexp i stedet: function alias(fEle) { tmp = fEle.value.toLowerCase() tmp = tmp.replace(new RegExp("æ", "gi"),"ae") tmp = tmp.replace(new RegExp("ø", "gi"),"oe") tmp = tmp.replace(new RegExp("å", "gi"),"aa") tmp = tmp.replace(new RegExp(" ", "gi"),"-") fEle.form.text2.value = tmp }
16. januar 2008 - 22:59
#5
<ole> - eller: function alias(fEle) { tmp = fEle.value.toLowerCase(); tmp = tmp.replace(/\u00c6/g,"AE"); tmp = tmp.replace(/\u00e6/g,"ae"); tmp = tmp.replace(/\u00d8g,"OE"); tmp = tmp.replace(/\u00f8/g,"oe"); tmp = tmp.replace(/\u00c5/g,"AA"); tmp = tmp.replace(/\u00e5/g,"aa"); tmp = tmp.replace(/ /g,"-"); fEle.form.text2.value = tmp } - og for ikke at drive brugeren til vanvid, bør du undgå at udskifte tegnene on-the-fly - og derfor slette din onkeyup-handler. Det ville hæve brugervenligheden betydeligt ;o) /mvh </bole>
17. januar 2008 - 01:33
#6
-- og hvad vil så gøre, hvis der bruges ü eller ñ ?-) >>ole -- den toLowerCase skal vel slettes: function alias(fEle) { tmp = fEle.value; tmp = tmp.replace(/\u00c6/g,"AE"); tmp = tmp.replace(/\u00e6/g,"ae"); ...
17. januar 2008 - 01:55
#7
- sæ'føl'somt ;o)
17. januar 2008 - 01:59
#8
- og til det første, señor ... ehhhh ... senjor ;D tmp = tmp.replace(/\u00f1/g,"nj");
17. januar 2008 - 08:24
#9
Lowercase skal netop med. Rød Ålborg (med stort) Skal jo bliver til: roed-aalborg (med lille) Så alle replace på stort kan også fjernes: function alias(fEle) { tmp = fEle.value.toLowerCase(); tmp = tmp.replace(/\u00e6/g,"ae"); tmp = tmp.replace(/\u00f8/g,"oe"); tmp = tmp.replace(/\u00e5/g,"aa"); tmp = tmp.replace(/ /g,"-"); fEle.form.text2.value = tmp }
17. januar 2008 - 21:24
#10
Åge Øvlidsen synes nu ikke, det skal med =)
28. januar 2008 - 09:30
#11
Det må så være op til cygnet at bestemme om han vil have den med eller ej :o)
03. juni 2011 - 11:08
#12
Kan du ligge et svar?
Vi tilbyder markedets bedste kurser inden for webudvikling