---
title: "Ej tillåta <% eller %> i en textarea"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/40160-ej-tillåta-eller-i-en-textarea"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "ampy"
published: "2002-03-23T18:14:08.000Z"
updated: "2002-03-23T22:26:22.000Z"
replies: 8
views: 223
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/javascript/40160-ej-tillåta-eller-i-en-textarea"
---

# Ej tillåta <% eller %> i en textarea

## #1 — ampy, 2002-03-23T18:14Z

Kod:

```
<script language="javascript">
function check(formobj){
if(formobj.pass1.value.length==0 || formobj.pass1.value != formobj.pass2.value){
alert('Lösenordet måste vara ifyllt och identiskt i båda fälten');
return false;
} else if(formobj.username.value.length==0){
alert('Du måste ange ett användarnamn');
return false;
} else if(formobj.epost.value.indexOf('@')<0){
alert('Du måste ange en e-post adress');
return false;
} else {
return true; 
}
}
</script>
```

Kan någon lägga till så att det kommer upp en ruta då om textarean innehåller \<% eller %\> i denna kod?

Permalänk: https://www.webforum.nu/p/40160

## #2 — Jojoxx, 2002-03-23T18:36Z

Det ser inte ut som något av fälten i funktionen är textareor, men om vi kallar text-arean "message" så kan du på raden före "} else {" lägga till;

```
} else if(formobj.message.value.indexOf('<%')>=0 || formobj.message.value.indexOf('%>')>=0){
alert('Du får inte använda <% eller %>');
return false;
```

Permalänk: https://www.webforum.nu/p/630299

## #3 — ampy, 2002-03-23T18:43Z

Du hade rätt, alla var inte textareor, hade skrivit fel men nu så skriver den bara ut sidan tills koden kommer, resten av sdain skriver den inte ut, varför?

```
<script language="javascript">
function check(formobj){
if(formobj.pass1.value.length==0 || formobj.pass1.value != formobj.pass2.value){
alert('Lösenordet måste vara ifyllt och identiskt i båda fälten');
return false;
} else if(formobj.username.value.length==0){
alert('Du måste ange ett användarnamn');
return false;
} else if(formobj.text.value.indexOf('<%')>=0 || formobj.text.value.indexOf('%>')>=0){
alert('Du får inte använda <% eller %>');
return false;
} else if(formobj.epost.value.indexOf('@')<0){
alert('Du måste ange en e-post adress');
return false;
} else {
return true; 
}
}
</script>
```

Permalänk: https://www.webforum.nu/p/630302

## #4 — ampy, 2002-03-23T18:44Z

> *Ursprungligen av ampy*  Du hade rätt, alla var inte textareor, hade skrivit fel men nu så skriver den bara ut sidan tills koden kommer, resten av sdain skriver den inte ut, varför?
> 
>
>
> ```
> <script language="javascript">
> function check(formobj){
> if(formobj.pass1.value.length==0 || formobj.pass1.value != formobj.pass2.value){
> alert('Lösenordet måste vara ifyllt och identiskt i båda fälten');
> return false;
> } else if(formobj.username.value.length==0){
> alert('Du måste ange ett användarnamn');
> return false;
> } else if(formobj.text.value.indexOf('<%')>=0 || formobj.text.value.indexOf('%>')>=0){
> alert('Du får inte använda <% eller %>');
> return false;
> } else if(formobj.epost.value.indexOf('@')<0){
> alert('Du måste ange en e-post adress');
> return false;
> } else {
> return true; 
> }
> }
> </script>
> ```

Permalänk: https://www.webforum.nu/p/630303

## #5 — ampy, 2002-03-23T18:45Z

Oj, skulle redigera meddelandet men råkade citera det, sorry.

Permalänk: https://www.webforum.nu/p/630304

## #6 — solbulle, 2002-03-23T18:57Z

glöm det, jag svammlar säkert bara...

Permalänk: https://www.webforum.nu/p/630306

## #7 — eas, 2002-03-23T20:43Z

Finns det ite risk att servern tolkar det som står mellan \<% och %\> som asp-kod.

Då kladdar den ju sönder din kod   §jr 

Om du kör filen som asp-fil, kan du inte köra den som html-fil?
Annars kanske man kan stänga av det på nåt annat sätt...

Permalänk: https://www.webforum.nu/p/630333

## #8 — Jojoxx, 2002-03-23T22:22Z

Jovisst, det ät sant. Är det en html-sida är det inga problem, är det asp däremot får det bli så här;

Först;
var foo = '\<'+'%'; var bar = '%'+'\>';

och sedan;

} else if(formobj.message.value.indexOf(foo)\>=0 \|\| formobj.message.value.indexOf(bar)\>=0){
alert('Du får inte använda '+foo+' eller '+bar);
return false;

Permalänk: https://www.webforum.nu/p/630358

## #9 — jarvklo, 2002-03-23T22:26Z

Om någon matar in text i ditt formulär och har Javascript avslaget i sin webbläsare, kan denne fortfarande mata in \<% och %\> i dina textareor och få detta skickat till servern vid submit på formuläret.
Den enda säkra lösningen för att försäkra sig att användaren inte lyckas spara text i något felaktigt format (eller som i detta fall några oönskade teckensekvenser) som denne matat in i ett formulär är att se till att all inmatad text även kontrolleras av den serverside- (t.ex.  asp- eller php-) kod som tar emot formulärinnehållet.

Permalänk: https://www.webforum.nu/p/630362

---

Tråden på webben: https://www.webforum.nu/amne/javascript/40160-ej-tillåta-eller-i-en-textarea
