WN

WN (https://www.wn.se/forum/index.php)
-   Klientsidans teknologier, design och grafik (https://www.wn.se/forum/forumdisplay.php?f=12)
-   -   Problem med ä i JS... (https://www.wn.se/forum/showthread.php?t=29263)

grinditwp 2008-05-13 09:01

Har en bit kod som slutat fungera sedan det blev ett serverbyte.
Från början låg det hela på en Linux-server och nu *suck* är det bytt till en Windows-server.

Jag har fattat att det hela beror på 'ä' i Träningsmatch. Att när document.getElementById('flag').value hämtar värdet och stöter på Täningsmatch så förstår den inte ä eller ä kodas om fel på vägen så att jämnförelsen mellan Täningsmatch och Täningsmatch inte blir den samma.

Så varför blir det såhär? och hur löser man det?

Kod:

<select name="flag" id="flag" onchange="checkIfMatch()">
  <option value="Match">Match</option>
  <option value="Täningsmatch">Tr&auml;ningsmatch</option>
  <option value="Träning">Tr&auml;ning</option>
  <option value="Övrigt">&Ouml;vrigt</option>
  </select>

<script language="javascript">
        function checkIfMatch(){
 if(document.getElementById('flag').value == 'Match'){
        document.getElementById('match').style.display = '';
        document.getElementById('comment').style.display = 'none';
        document.getElementById('text').value = 'Match';
 } else if(document.getElementById('flag').value == 'Träningsmatch'){
        document.getElementById('match').style.display = '';
        document.getElementById('comment').style.display = 'none';
        document.getElementById('text').value = 'Träningmatch';
 } else {
        document.getElementById('comment').style.display = '';
        document.getElementById('match').style.display = 'none';
       
 }
 
        }
        checkIfMatch();
</script>


jonny 2008-05-13 09:35

Om du ser till att alltid skriva träningsmatch, d v s med r så går det säkert bättre. Du har på flera ställen skrivit täningsmatch istället för tRäningsmatch

EmilIsberg 2008-05-13 09:39

Citat:

Originally posted by grinditwp@May 13 2008, 09:01
value="Täningsmatch">Tr&auml;ningsmatch</option>
...
} else if(document.getElementById('flag').value == 'Träningsmatch'){

Hmm... I din kod verkar det som du försöker jämföra 'Tärningsmatch' med 'Träningsmatch' och det är ju två olika ord på grund att 'Tärningsmatch' saknar ett 'r'.

Jag skulle testa att skriva value="Träningsmatch" innan jag skyller på svenska tecken.

Oavsett så borde det inte vara beroende på om du använder Windows eller UNIX eftersom både HTML-koden och javascriptskoden används i webbläsaren och alltså borde svenska tecken tolkas lika. Servern levererar bara sidans innehåll.

grinditwp 2008-05-13 09:40

Citat:

Originally posted by jonny@May 13 2008, 09:35
Om du ser till att alltid skriva träningsmatch, d v s med r så går det säkert bättre. Du har på flera ställen skrivit täningsmatch istället för tRäningsmatch


HAHA.. där ser man... och vad har vi lärt oss? Koda inte med trötta ögon. :)

Tack.

EDIT: Tog förövrigt bara föregivet att det var windows-serverns fel då jag fått en del andra problem pga detta bytet. (gammal windows server för den delen, med PHP-stenålder och MYSQL-frösihjäl.


Alla tider är GMT +2. Klockan är nu 01:06.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson