Shopsystem ShopPilot

ShopPilot => ShopPilot Enterprise => Thema gestartet von: dobra am September 14, 2007, 10:40:01

Titel: LBSAUTO = 0
Beitrag von: dobra am September 14, 2007, 10:40:01
Hallo,

Habe ein "klitzekleines" Problemchen mit LBSAUTO:

Mit JS wird die Lagerstandskontrolle bereits bei der Eingabe geprüft und bei Überschreitung der lieferbaren Menge die Eingabe korrigiert und eine entsprechende Meldung ausgegeben.

function checkCount(elem, max) {
if (isNaN(elem.value)) { elem.value = "0"; }
else if (elem.value > max) { elem.value =  max;
   alert("leider nur noch " + max + " Stück lieferbar");}
}

(aus Demoshop)

Das funktioniert auch bestens.

Wenn der LBSAUTO-Wert allerdings "0" ist, wird das Script ignoriert und man kann jeden beliebigen Wert eingeben der dann erst in WK auf 0 gesetzt wird.

Habe es mit
...
else if (max = 0) { elem.value = "0";;
   alert(" ... ");}
..

in verschiedenen Schreibweisen versucht - aber nicht die richtige gefunden  :'(
mit max = 0  wird der Codteil überhaupt nicht und mit max = "0" immer (auch wenn LBSAUTO nicht 0 ist) ausgeführt.
ich kann es einfach nicht.......

Nachtrag:  in verwende es mit Multiplacecart
Titel: Re: LBSAUTO = 0
Beitrag von: cru am September 14, 2007, 11:21:28
Hallo dobra,

ich habe das obere Script mal so in etwas wie Sie es eingebaut haben nachgebaut, bei mir tritt jedoch kein Fehler auf.

Im unteren Code-Teil befindet sich jedoch ein kleiner Fehler.

else if (max = 0)

Hier erhält, so wie es zu Zeit ist die Variable max den Wert "0".

Wenn Sie lediglich überprüfen wollen ob die Variablre max den Wert 0 hat, muss der Code folgendermaßen lauten:

else if (max == 0)

mfg
cru
Titel: Re: LBSAUTO = 0
Beitrag von: dobra am September 14, 2007, 14:20:27
DANKE für die Erklärung der etwas komplizierteren Zusammenhänge

jetzt funktioniet alles wie es soll  ;D