Avatar billede wolfgang Praktikant
25. oktober 2005 - 11:34 Der er 2 kommentarer

Validering - Sammekædning af scripts

Endnu en gang, viser min manglende js evner sig :(
Jeg har, med hjælp fra experter, fået et script der viser brugeren grafisk, hvor mange der kan tastes ind. Dvs. et billede der skifter når maks. er overskredet.

For at gøre dette til en "rigtig" validering, ville jeg gerne kæde det sammen med et valideringsscript, som jeg er glad for at benytte (og jeg kan finde ud af :) )

Script 1 - Grafisk validering:
function ValidateInput(elm, maxLength){
  var pic = document.getElementById(elm.id + "_Pic");
  var l = elm.value.length;
  if(l == 0)
    pic.style.visibility = "hidden";
  else if(l <= 6){
    pic.src = "_Images/Icons/NoGo.gif";
    pic.style.visibility = "visible";
  }else if(l <= maxLength){
    pic.src = "_Images/Icons/GoOk.gif";
    pic.style.visibility = "visible";
  }else{
    pic.src = "_Images/Icons/AbsNoGo.gif";
    pic.style.visibility = "visible";
  }
}

Eksempel på inputfelt:
<input name="DataField_01" type="text" class="frmTextField val60" id="DataField_01" size="60" onkeyup="ValidateInput(this,60);" onblur="this.style.border='2px inset';" onfocus="this.style.border='2px solid #405B99';" /><img src="_Images/Icons/NoGo.gif" alt="60 tegn" name="DataField_01_Pic" align="top" id="DataField_01_Pic" style="visibility:hidden; margin-top:3px;margin-left:3px;" />

Script 2 - Validering på indhold:
function validering(frm)
  {
 
    if((frm.DataField_01.value==0))
      {       
    alert('Du skal beskrive dit umiddelbare indtryk!');
    frm.DataField_01.focus();
    return false;    
      }   

if((frm.DataField_01.value.length>60))
      {       
    alert('Du bedes venligst begrænse dit indhold.');
    frm.DataField_01.focus();
    return false;    
      }                   
 
      return true;
    }

<form name="frm" method="post" action="?DoReview=Yes" onSubmit="return validering(this);">
etc...

Jeg håber at det kan lade sig gøre, at smelte disse 2 scripts sammen.

Her tænker jeg bl.a. på at script 2, kan trække info fra script omkring tilladte antal tegn.

PS: Hvis det skal uddybes, skal I endelig sige til.

MVH
Garnet
Avatar billede wolfgang Praktikant
25. oktober 2005 - 11:35 #1
OBS: Formen submittes således.
<img src="_Images/bt_forsaet_0.gif" alt="Fors&aelig;t" width="60" height="21" style="cursor:hand;" onclick="document.frm.submit();" />
Avatar billede olebole Juniormester
26. oktober 2005 - 02:46 #2
<ole>

onsubmit-event'en fyres ikke af, når en form submittes via JavaScript. Brug f.eks. dette i stedet:
  <input type="image" src="_Images/bt_forsaet_0.gif" title="Fors&aelig;t">
- som er en alm. submitknap.

Undlad i øvrigt XHTML-lukninger af tags, hvis du beruger HTML.
Hvis du i stedet skriver XHTML, bør du nok overveje at anvende en markup-version, der kan bruges på WWW. Den seneste af dem hedder HTML4.01  :)

/mvh
</bole>
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