Avatar billede ssv Nybegynder
21. oktober 2008 - 16:12 Der er 10 kommentarer og
1 løsning

'Ulovlige' tags i textarea/input

Hello.

Så er det endnu en gang blevet tid til lidt javascript-hjælp. Hvis en bruger indtaster ulovlige tags (eks. 'div', 'span') i et textarea/input og forsøger at submitte formen skal der vises en alert.

Simple, right? :-)
Avatar billede w13 Novice
21. oktober 2008 - 16:21 #1
Evt. noget i stil med:

var sText = "Hello World <div></div>";

if (sText.indexOf('<div') {
  alert("Div-elementer er ikke tilladt!";
}
if (sText.indexOf('<span') {
  alert("Span-elementer er ikke tilladt!";
}

Dog kan det laves meget bedre og sikrere med Reg.Exp.
Avatar billede w13 Novice
21. oktober 2008 - 16:21 #2
Hov, det skulle selvfølgelig være:

var sText = "Hello World <div></div>";

if (sText.indexOf('<div')>-1) {
  alert("Div-elementer er ikke tilladt!";
}
if (sText.indexOf('<span')>-1) {
  alert("Span-elementer er ikke tilladt!";
}
Avatar billede ssv Nybegynder
21. oktober 2008 - 16:31 #3
Nu behøves jeg kun én samlet alert i stil med "Ulovlige karakterer er brugt", så du må gerne samle dem. Og hvordan sætter jeg det op :-)?
Avatar billede w13 Novice
21. oktober 2008 - 16:37 #4
Så skal det stå sådan her:

var sText = "Hello World <div></div>";

if (sText.indexOf('<div')>-1 || sText.indexOf('<span')>-1) {
  alert("Nogle elementer er ikke tilladt!");
}
Avatar billede w13 Novice
21. oktober 2008 - 16:41 #5
F.eks.:

<script type="text/javascript">
function validate(o){
  o = o.value;

  if (o.indexOf('<div')>-1 || o.indexOf('<span')>-1) {
    alert("Nogle elementer er ikke tilladt!");
    return false;
  }

  return true;
}
</script>

<form method="post" action="..." onsubmit="validate(document.getElementById('message'))">

  <textarea id="message"></textarea>

  <input type="submit">

</form>
Avatar billede ssv Nybegynder
21. oktober 2008 - 16:43 #6
Vil du sætte et komplet html eksempel op? Jeg får fejlbeskeden allerede når siden loader :-)
Avatar billede ssv Nybegynder
21. oktober 2008 - 16:43 #7
Ja okay, jeg skulle lige opdatere ;-) ^
Avatar billede ssv Nybegynder
21. oktober 2008 - 16:51 #8
Det virker jo fint - drop et svar :-)
Avatar billede w13 Novice
21. oktober 2008 - 17:03 #9
:)
Avatar billede olebole Juniormester
21. oktober 2008 - 19:09 #10
<ole>

- men husk, at JavaScripts _altid_ kan omgås, så af sikkerhedsgrunde skal du altid tjekke den slags på serveren. JavaScript-tjekket er _kun_ til for brugerens skyld ... det giver absolut ingen sikkerhed  ;o)

/mvh
</bole>
Avatar billede w13 Novice
24. oktober 2008 - 18:59 #11
Tak for points! :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester