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?
Annonceindlæg fra Computerworld it-jobbank
Mød 3.500+ it-talenter på IT-DAY 2026
Hos Computerworld it-jobbank er vi stolte af at fortsætte det gode partnerskab med folkene bag IT-DAY – efter vores mening Danmarks bedste karrieremesse for unge og erfarne it-kandidater.
27. september 2005 - 12:39
#2
har du en url ?
27. september 2005 - 12:41
#3
jss >> det er kun frameworket ikke valideringsregelæt/mekanismen der er i dette spm
27. september 2005 - 12:44
#4
horsmark - url er på vej - 2 minutter
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">
27. september 2005 - 12:50
#6
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 ...
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 ...
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 }
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?
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" } }
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
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 :-)
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/
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 :-)
Vi tilbyder markedets bedste kurser inden for webudvikling