Avatar billede nidyahou Praktikant
22. februar 2004 - 21:53 Der er 12 kommentarer og
2 løsninger

if and if

<script language="JavaScript">
function Check() {
    if (document.ting.alm.value and document.ting.alm.spec == "") {
        alert("Du skal vælge en ting!");
        return false;
    }
    if (document.ting.kom.value == "") {
      alert("Du skal skrive noget om tingen!");
      return false;
    }
    if (document.ting.pris.value == "") {
      alert("Du skal angive en minimum pris!");
      return false;
    }
}
</script>

fejlen ligger jo i at alarmen kun sjak komme hvis både ting.alm og ting.spec er lig ingenting, men hvordan gøres det?
Avatar billede skovenborg Nybegynder
22. februar 2004 - 21:55 #1
if (document.ting.alm.value && document.ting.alm.spec == "")
Avatar billede cpufan Juniormester
22. februar 2004 - 21:58 #2
if (document.ting.alm.value == "" && document.ting.alm.spec == "")
Avatar billede roenving Novice
22. februar 2004 - 22:00 #3
Hrmm ...

    if (document.ting.alm.value == "" and document.ting.alm.spec.value == "") {
Avatar billede roenving Novice
22. februar 2004 - 22:01 #4
Gaab, lidt for eh ... hurtig ? langsom ?-)

if (document.ting.alm.value == "" && document.ting.alm.spec.value == "") {
Avatar billede nidyahou Praktikant
22. februar 2004 - 22:11 #5
koden ser nu sådan her ud:

<script language="JavaScript">
function Check() {
  if (document.ting.alm.value == "" && document.ting.spec.value == "") {
        alert("Du skal vælge en ting!");
        return false;
        }
    if (document.ting.alm.value && document.ting.spec.value > "") {
        alert("Du må kun vælge én ting!");
        return false;
    }
    if (document.ting.kom.value == "") {
      alert("Du skal skrive noget om tingen!");
      return false;
    }
    if (document.ting.pris.value == "") {
      alert("Du skal angive en minimum pris!");
      return false;
    }
}
</script>

hvis man giver alm.ting en værdi springer den alle de andre led over, og poster... det må den jo ikke :D
Avatar billede cpufan Juniormester
22. februar 2004 - 22:48 #6
if (document.ting.alm.value <> "" && document.ting.spec.value <> "")
Avatar billede nidyahou Praktikant
22. februar 2004 - 23:14 #7
thx fellas :D cpufan og roencing må gerne droppe et svar, og så er det da synd at cpufan ingen karma har endnu :D
Avatar billede nidyahou Praktikant
22. februar 2004 - 23:16 #8
måske i lige hurtigt ved hvorn man får et input til kun at være acceptabelt i tal, hvis ikke i gør er det os helt iorden :D
Avatar billede cpufan Juniormester
22. februar 2004 - 23:21 #9
den med tal vil være en størrere omgang hvis jeg skal begive mig ud i det,
måske roenving har en nem løsning
Avatar billede roenving Novice
22. februar 2004 - 23:23 #10
if(!document.pris.value.match(/\d+/)){

-- men den tager ikke højde for evt. decimaltal, så skal den se sådan ud:

if(!document.pris.value.match(/\d+(\.\d+)?/)){

-- og velbekomme '-)
Avatar billede roenving Novice
22. februar 2004 - 23:26 #11
-- og så, så den kun accepterer et tal:

if(!document.pris.value.match(/^\d+(\.\d+)?/$)){
Avatar billede nidyahou Praktikant
22. februar 2004 - 23:33 #12
hvad hvis den må godtage tal og tegnet "½"
Avatar billede nidyahou Praktikant
22. februar 2004 - 23:35 #13
nvr mind ½ er jo et tal :D
Avatar billede roenving Novice
22. februar 2004 - 23:42 #14
½ er ikke et tal i denne sammenhæng, så den skal tillægges specielt:

if(!document.pris.value.match(/^(½|\d+(\.\d+)?/)$)){

-- og tak for points ;~}
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