Avatar billede lsskaarup Nybegynder
15. februar 2005 - 11:08 Der er 3 kommentarer og
1 løsning

Hjælp til if-sætning

Jeg har lidt problemer med en if-sætning, som jeg efter hånden har stirret med blind på. Løsningen er sikkert let, men jeg kan bare ikke se den lige nu.

Jeg har 3 felt, som der skal tjekkes på. Felt 397, 398 og 401. Hvis 397 er udfyldt(ikke med 0) skal de 2 andre felter også være udfyldt. Der skal så komme en alert som sidder hvilket felt der ikke er udfyldt. Mit problem er at siden skal lave nogle beregninger bl.a. på disse felters værdier, men den beregner ikek efter, nok fordi if-sætningen fanger lidt for meget.
Avatar billede moocher Nybegynder
15. februar 2005 - 11:50 #1
Prøv at vise det script du forsøger at bruge..

med udregne mener du så baseret på en af de to andre værdier eller baseret på noget andet
Avatar billede lsskaarup Nybegynder
15. februar 2005 - 11:57 #2
Udregningerne er bare nogle matematiske formler, som regner nogle værdier ud på baggrund bl.a. af disse 3 felter.

Nu har jeg rodet noget rundt med den, dog ikke siden jeg skrev dette spørgsmål. Så jeg kan ikke vise de scriptet direkte, men jeg har noget seoudokode, hvis det kan hjælpe.

hvis (felt397 er udfyldt (dog ikke 0) )
    så hvis (felt398 ikke er udfyldt (tom eller 0) )
        alert vægt
    ellers hvis (felt398 er udfyldt (dog ikke 0) )
        så hvis (felt401 ikke er udfyldt (tom eller 0) )
        alert kostpris

Problemet er hvis de alle er udfyldte, så skal der beregnes nogle værdier, men det bliver der ikke.
Avatar billede lsskaarup Nybegynder
15. februar 2005 - 13:41 #3
Okay, jeg har nu selv løst problemet, men kunne godt tænke mig en bedre løsning, da jeg nu kun sammenligner 2 felter ad gangen. Koden ser sådanne ud:

  } else if (ds.r397.value != "" && ds.r398.value < 1) {
    alert("Du har glemt at udfylde følgende felt under Sokkeljern: Vægt.");
  } else if (ds.r397.value != "" && ds.r401.value < 1) {
    alert("Du har glemt at udfylde følgende felt under Sokkeljern: Kostpris.");
  } else if (ds.r413.value != "" && ds.r414.value < 1) {
    alert("Du har glemt at udfylde følgende felt under Sokkeljern: Vægt.");
  } else if (ds.r413.value != "" && ds.r417.value < 1) {
    alert("Du har glemt at udfylde følgende felt under Sokkeljern: Kostpris.");
  } else if (ds.r455.value != "" && ds.r456.value < 1) {
    alert("Du har glemt at udfylde følgende felt under Sokkeljern: Vægt.");
  } else if (ds.r455.value != "" && ds.r459.value < 1) {
    alert("Du har glemt at udfylde følgende felt under Sokkeljern: Kostpris.");
  } else if (ds.r455a.value != "" && ds.r456a.value < 1) {
    alert("Du har glemt at udfylde følgende felt under Sokkeljern: Vægt.");
  } else if (ds.r455a.value != "" && ds.r459a.value < 1) {
    alert("Du har glemt at udfylde følgende felt under Sokkeljern: Kostpris.");
  }

Grunden til at jeg ikke har nogen alert når det første felt er tomt, skyldes at systemet er bygget op på den måde, at de bliver beregnet når de ikke er udfyldt. Måske ikke den bedste løsning, men godt nok indtil videre.
Avatar billede lsskaarup Nybegynder
21. februar 2005 - 15:28 #4
svar
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