Avatar billede amtoft Novice
19. januar 2005 - 16:17 Der er 4 kommentarer og
1 løsning

Kontroller antal i 2 form felter før submit

Har et antal der er hevet ud af databasen.
Ligger i $quantity.
Dette antal skal fordeles i 2 forskellige input-felter i en form, og sendes videre når formen submittes.
Men jeg vil gerne kontrollere at totalen af de to felter ikke overstiger det antal der ligger i $quantity.

Kan godt kontrollere det, når formen er submittet og kommet videre til næste side, men jeg ønsker at få en fejl-medl. før.

Allerhelst vil jeg have en sammentælling "on the fly" så jeg får advarslen når felt "2" forlades. - det er ikke givet at felt 1 udfyldes før felt 2.

Siden er lavet i php.

Kan I hjælpe ?
Avatar billede loevgaard Praktikant
19. januar 2005 - 16:25 #1
if((felt1.value+felt2.value) > quantity) {
alert('MÅ DU IKKE');
}

Noget i den dur du mener?
Avatar billede jakoba Nybegynder
19. januar 2005 - 16:27 #2
for at checke før submit skal du bruge javascript.

så spørg i den kategori.
Avatar billede lillebror Nybegynder
19. januar 2005 - 16:27 #3
<script type="text/javascript">
quantity = <?php echo $quantity; ?>
function checkSum()
{
felt1 = document.getElementById('felt1').value
felt2 = document.getElementById('felt2').value
total = felt1 + felt2
if(total > quantity) {
alert('Det indtastede overstiger grænsen')
}
}
</script>

<input type="text" id="felt1" name="felt1" value="0" onBlur="checkSum()">
<input type="text" id="felt2" name="felt2" value="0" onBlur="checkSum()">
Avatar billede amtoft Novice
19. januar 2005 - 17:02 #4
lillebror: ->

mine <text input> input felter er en del af et array.
Så de hedder
<input type="text" name="quantity[<?php echo $data[$i]['entryno']; ?>]"  value="<?php echo $showquantity;  ?>" onBlur="CheckSum()">
<input type="text"  name="sellqty[<?php echo $data[$i]['entryno']; ?>]" value="0" onBlur="CheckSum()">

Men jeg syns ikke lige at jeg får det indpasset i scriptet ?
Avatar billede amtoft Novice
19. januar 2005 - 19:45 #5
Med lidt modifikation lykkes det.

total = parseInt(felt1)+parseInt(felt2)

ellers blev de to feltværdier lagt sammen som tekststreng. Så hvis felt1 er 3 og felt2 er 4, blev total efter lillebrors anvisning 34. Ved at bruge parseInt bliver resultatet som det skal være, 7.
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