Avatar billede jss Nybegynder
27. september 2005 - 12:37 Der er 13 kommentarer og
2 løsninger

validering ved onclick på button

Jeg bygger videre på http://eksperten.dk/spm/358779 og skal have valideret radiobuttons for hver div, hver gang der klikkes på næste.

Hvordan gøres det?
Avatar billede jss Nybegynder
27. september 2005 - 12:38 #1
Se indlæg: roenving 31/05-2003 22:35:28 i http://eksperten.dk/spm/358779
Avatar billede horsmark Nybegynder
27. september 2005 - 12:39 #2
har du en url ?
Avatar billede horsmark Nybegynder
27. september 2005 - 12:41 #3
jss >> det er kun frameworket ikke valideringsregelæt/mekanismen der er i dette spm
Avatar billede jss Nybegynder
27. september 2005 - 12:44 #4
horsmark - url er på vej - 2 minutter
Avatar billede horsmark Nybegynder
27. september 2005 - 12:46 #5
function validateRadioGroupByStep( iStep ){
eRadioGroup = document.getElementsByTagName('radiogrp_step_'+ iStep)
var bIsChecked = false
for(var i=0; i < eRadioGroup.length; i++){
  if( eRadioGroup[i].checked == true) bIsChecked = true
}
if( !bIsChecked ) alert("Du mangler at vælge!")
}

scriptet forudsætter at dine radiogroups navngives efter step ligeså

dvs step 4
<input type="radio" name="radiogrp_step_4" value="1">
<input type="radio" name="radiogrp_step_4" value="2">
<input type="radio" name="radiogrp_step_4" value="3">
Avatar billede jss Nybegynder
27. september 2005 - 12:50 #6
http://www.dma-research.com/dummy/test/

kigger lige på dit forslag imens :-)
Avatar billede jss Nybegynder
27. september 2005 - 12:52 #7
derudover skal det være således at hvis der vælges 1,2 eller 3, så skal man udfylde input-feltet i tilhørende spørgsmål ...
Avatar billede jss Nybegynder
27. september 2005 - 13:04 #8
horsmark --> Kan det lade sig gøre, som det er sat op nu eller skal jeg lave noget om? Jeg har jo flere radiogrupper pr. div ...
Avatar billede horsmark Nybegynder
27. september 2005 - 13:57 #9
tja så skal du have en validering til hvert step

validateStep( iStep ){
var alertString = ""
switch(iStep){
  case 1:
  if(isRadioGroupChecked( "gruppe1_step1") && isRadioGroupChecked( "gruppe2_step1")){
    alertString += "Du mangler at blabla på step 1"
  }
  break;
  case 2:
  if( isRadioGroupChecked( "gruppeduppe_step2") ){
    alert("Du mangler at blabla på step 2")
  }
  break;
}
if( alertString != "" ){
  alert(alertString)
  return false
} else {
  return true
}
}

function isRadioGroupChecked( sRadioGroupName ){
eRadioGroup = document.getElementsByTagName(sRadioGroupName)
for(var i=0; i < eRadioGroup.length; i++){
  if( eRadioGroup[i].checked == true) return true
}
return false
}
Avatar billede jss Nybegynder
27. september 2005 - 14:09 #10
jeg er jo lidt grøn i javascript ;-)
Så hvordan får jeg tilføjet at hvis der vælges 1,2 eller 3, så skal man udfylde input-feltet i tilhørende spørgsmål? og hvordan skal kaldet laves?
Avatar billede horsmark Nybegynder
27. september 2005 - 14:19 #11
oki så kan du lige tilrette funktionen til at returnere false hvis ingen er checked eller hvilken én der er checked...

function getRadioGroupChecked( sRadioGroupName ){
eRadioGroup = document.getElementsByTagName(sRadioGroupName)
for(var i=1; i <= eRadioGroup.length; i++){
  if( eRadioGroup[i].checked == true) return i
}
return false
}

så du nu kan lave

  case 1:
  var radioGrp1 = getRadioItemChecked( "gruppe1_step1")
  var radioGrp2 = getRadioItemChecked( "gruppe2_step1")
  if( !radioGrp1 ) alertString += "Du mangler at udfylde gruppe1 på step 1"
  if( !radioGrp2 ) alertString += "Du mangler at udfylde gruppe2 blabla på step 1"
  if( radioGrp1 > 0 && radioGrp1 < 4 && document.getElementById('mintextbox').value == "" ){
    alertString += "Du mangler at udfylde beskrivelsen på gruppe 1 på step 1"
  }
  if( radioGrp2 > 0 && radioGrp2 < 4 && document.getElementById('mintextbox2').value == "" ){
    alertString += "Du mangler at udfylde beskrivelsen på gruppe 2 på step 1"
  }
  }
Avatar billede horsmark Nybegynder
27. september 2005 - 14:20 #12
getRadioGroupChecked skal omdøbes til getRadioItemChecked da den nu returnerer false hvis intet valgt eller nummer (tal) på den radio der er checked
Avatar billede jss Nybegynder
27. september 2005 - 14:32 #13
Horsmark --> Det ser ud til at være det der skal til. Jeg "roder" videre med det, men vender måske frygteligt tilbage. Læg et svar og 100 stærke er på vej til dig :-)
Avatar billede horsmark Nybegynder
27. september 2005 - 14:38 #14
allrighty hermed et svar.

Jeg sidder og bygger på tdconline og privattdc formularer. Mon ikke du kan nappe noget godt derfra ved at kigge i koden ;-)

Check evt. http://privat.tdc.dk/internet/bredbaand/bestil/
Avatar billede jss Nybegynder
27. september 2005 - 14:45 #15
Så godt at du havde svaret tidligere, lige da jeg havde sendt kommentaren - typisk. Endnu engang tak for hjælpen og så vil jeg gå på røvertogt hos tdc :-)
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