• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[FRAGE] [JavaScript] Problem mit Script in einem Formular

a-i-r

New member
Hallo Leute,

zunächst mal: habt Nachsicht, ich bin absoluter JavaScript-Newbie! Ich habe im CMS Joomla 2.5 die aktuelle Version der Breezingforms-Komponente installiert, mit der man sich Formulare bauen kann. Jetzt bin ich dabei, ein solches zusammenzustellen. Ein Anmeldeformular für eine Vereinsweihnachtsfeier, wo unter anderem das Essen vorbestellt werden soll.

Auf der ersten Formularseite gibt man ein paar persönliche Angaben und das Essen, welches man bestellen möchte an, indem man in ein Eingabefeld vor der jeweiligen Speise die Menge angibt. Da man mit einem mal mehrere Personen anmelden kann (z.B. Familienmitglieder) kann es ja auch sein, das man ein Essen mehrfach bestellt. Daher die Eingabemöglichkeit einer Zahl.

Wenn die Angaben auf der ersten Seite gemacht sind, gibt es einen "Weiter"-Button, der die Seite validiert und auf die zweite Formularseite verlinkt. Dort sollen alle Angaben in einer Summary nochmal dargestellt werden. Außerdem soll der zu zahlende Unkostenbeitrag (1€ pro Person) + die Kosten der ausgewählten Speisen in einem Feld zusammengerechnet werden.

In der Komponente kann man jedem Textfeld bestimmte Scripte zuweisen; ein Initialisierungsscript, eine Aktionsscript und ein Validierungsscript. Wie ich einem Beispiel entnehmen konnte, werd die Summary mit einem Initialisierunsscript realisiert. D.h. das bei Eintritt der zweiten Formularseite die Eingaben aus der ersten Seite initial verwendet werden (können).

Dem Textfeld wird zunächst ein sog. Rahmencode zugewiesen. In diesen Rahmencode kommt dann das eigentliche Script. Offensichtlich habe ich im Script einen Fehler, da das Formular nach dem Script nicht mehr richtig dargestellt wird und der Gesamtpreis, der ausgerechnet werden soll, wird auch nicht angezeigt.

Hier das Script:

Code:
// Rahmencode

function ff_gesamt_check_init(element, condition)
{
    switch (condition) {
        case 'pageentry':
            break;
        default:;
    } // switch

// Code Gesamtrechnung

function ff_pss_calculate()
{
    var amount = 0;
    var order;

    order = ff_getElementByName('anzahl_eingabe').value;
    if (order != '') amount += parseInt(order) * 1.00;

    order = ff_getElementByName('zaziki_eingabe').value;
    if (order != '') amount += parseInt(order) * 3.50;

    order = ff_getElementByName('saganaki_eingabe').value;
    if (order != '') amount += parseInt(order) * 6.00;

    order = ff_getElementByName('salat_eingabe').value;
    if (order != '') amount += parseInt(order) * 8.50;

    order = ff_getElementByName('suvlaki_eingabe').value;
    if (order != '') amount += parseInt(order) * 9.00;

    order = ff_getElementByName('grillteller_eingabe').value;
    if (order != '') amount += parseInt(order) * 12.20;

    order = ff_getElementByName('kalamaris_eingabe').value;
    if (order != '') amount += parseInt(order) * 9.80;

    order = ff_getElementByName('cordonbleu_eingabe').value;
    if (order != '') amount += parseInt(order) * 9.50;

    order = ff_getElementByName('putenschnitzel_eingabe').value;
    if (order != '') amount += parseInt(order) * 9.00;

    order = ff_getElementByName('schaeufele_eingabe').value;
    if (order != '') amount += parseInt(order) * 8.50;

    order = ff_getElementByName('apfel_eingabe').value;
    if (order != '') amount += parseInt(order) * 3.80;

    order = ff_getElementByName('eis_eingabe').value;
    if (order != '') amount += parseInt(order) * 3.80;

} // ff_pss_calculate

var myTextField = ff_pss_calculate();

// Now the TextField which will get the value of your first TextField

var myTextField2 = ff_getElementByName('gesamt_check');

ff_getElementByName('gesamt_check').value = (Math.round(amount*100)/100).toFixed(2);

// Set the value

myTextField2.value = myTextField.value;

} // ff_gesamt_check_init

Ich hoffe mir kann wer helfen, wo mein Fehler liegt.

"gesamt_check" ist der Name von dem Feld, in dem der Gesamtpreis erscheinen soll.
"anzahl_eingabe" ist die Anzahl der Personen
"speisenname_eingabe" ist die Anzahl des jeweiligen Essens

Anmeldung Weihnachtsfeier 2013

Vielen Dank für eure Hilfe
 
Hi,

es kommen ganz viele Javascript Fehler:
bild8.png

Anscheinend wird dein Script nicht richtig oder garnicht geladen. Bist du sicher, dass das an der richtigen Stelle bzw. überhaupt eingebunden wird? (Ich konnte die Stelle jedenfalls nicht finden, eventuell macht Joomla aber auch irgendwas seltsames mit deinem Script. Mit Joomale kenne ich mich aber überhaupt nicht aus.)


Gruß
 
An der richtigen Stelle steht es schon, denke ich. Es hat mir zwischendurch auch schon mal das richtige Ergebis ausgespuckt. Ich denke, das ich hauptsächlich einen Fehler im Aufbau des Scriptes bzw. in der Syntax habe.

Gruß
 
Benutzer bitte sofort sperren, damit er nicht weiter das Forum vollspammt!
 
Zuletzt bearbeitet:
Das kommt immer in Wellen. Aber ich bin der Meinung, dass das Bots sind. Menschliche Spammer versuchen meistens ihr Vorhaben etwas zu tarnen.
 
Stimmt. Wenn ich als Person versuchen würde, Backlinks/Spam zu verbreiten, würde ich so vorgehen wie dieser eine Nutzer, der immer seinen Beruf (tatkräftige Pflegekraft) erwähnt hat, was in Wirklichkeit Links in Farbe des Textes waren... ;)
Erinnert du dich?
 
Zurück
Oben