Derkleinemuck: Hilfeeeeeeeeee

Hi!
Also ich brauch eure Hilfe weil ich echt nicht mehr weiter komme. Und zwar fehlt bei dem Programm noch das die Rechnung so lange durchlaufen soll (Endlosschleife) bis man sie mit einem Button beendet.
Hat jemand eine Idee wie des geht?
Anbei mein Quellcode der so weit glaube ich funzt.

<HTML>
<span class="Stil3">Aufgabe 7 - Brutto/Netto</span><p>
<HEAD>
<TITLE>
</TITLE>
</HEAD>
<br>
<br>
</p>

<table border="2"cellspacing=2 bordercolor=black width="460">
  <col width="60">
  <col width="200">
  <col width="200">

<tr bgcolor=#CCFFFF>
    <td> Pos.</td>
    <td> Artikel</td>
    <td> Preis (netto) in &euro; </td>
      </tr>
        <tr>
          <td> 1</td>
          <td> Tretlager</td>
          <td> 123.00 </td>
        <tr>
          <td> 2</td>
          <td> Tretkurbel</td>
          <td> 78.50</td>
        <tr>
          <td> 3</td>
          <td> Sattelstütze</td>
          <td> 29.80</td>
        <tr>
          <td> 4</td>
          <td> Lenker</td>
          <td> 47.20</td>
        <tr>
          <td> 5</td>
          <td> Vorbau</td>
          <td> 29.40</td>
      </tr>
</table>
<p>
<p>
</p>
<b><u>Gesamtpreis (brutto):<input style="font-weight:bold" size="5" name="Bruttopreis1" id=">Bruttopreis1" readonly="readonly"></u></b>
<br>
<p>
</p>
<span class="Stil2">Im Betrag von</span>
<input style="font-size:8px; "type="text" size="4" name="Bruttopreis2" id="Bruttopreis2" readonly="readonly"/>
<span class="Stil2">&euro; sind 19% Mehrwersteuer</span>
<input style="font-size:8px; "type="text" size="4" name="Mehrwertsteuer1" id="Mehrwertsteuer" readonly="readonly"/><span class="Stil2">&euro; enthalten. </span></p>
<br>
<form>

</form>

<script type="text/javascript">
<!--

var Tretlager;
var Tretkurbel;
var Sattelstütze;
var Lenker;
var Vorbau;
var Nettopreis;
var Bruttopreis;
var Mehrwertsteuer;

Tretlager=123.00;
Tretkurbel=78.50;
Sattelstütze=29.80;
Lenker=47.20;
Vorbau=29.40;
Nettopreis=0;
Bruttopreis=0;
Mehrwertsteuer=0;

Nettopreis=Tretlager+Tretkurbel+Sattelstütze+Lenker+Vorbau;
Bruttopreis=Nettopreis*1.19;
Bruttopreis=Bruttopreis.toFixed(2);
Mehrwertsteuer=Bruttopreis-Nettopreis;
Mehrwertsteuer=Mehrwertsteuer.toFixed(2);

document.getElementById("Bruttopreis1").value=(Bruttopreis);
document.getElementById("Bruttopreis2").value=(Bruttopreis);
document.getElementById("Mehrwertsteuer1").value=(Mehrwertsteuer);

//-->
</script>

<style type="text/css">
<--!
.Stil1 {font-size:14px; color:#000000; font-weight: bold;
}
.Stil2 {font-size: 9px; color:#000000;}

.Stil3 {font-size: 25px; color:blue; font-weight: bold; text-decoration: underline;}
}
-->
</style>
</BODY >
</html>

  1. Hallo Derkleinemuck,

    <span class="Stil3">Aufgabe 7 - Brutto/Netto</span><p>

    warum sollten wir denn Deine Hausaufgaben lösen?

    Du mußt doch "nur" mit einem Button irgendeine Variable ändern, so daß die Schleife unterbrochen wird. Mit ein wenig suchen und probieren sollte das doch hinzubekommen sein.

    Grüße aus Stockholm,
    Götz

    --
    Losung für Sonntag, 20. April 2008
    HERR, wie sind deine Werke so groß und viel! Du hast sie alle weise geordnet, und die Erde ist voll deiner Güter. (Psalm 104,24)
    Herr, unser Gott, du bist würdig, zu nehmen Preis und Ehre und Kraft; denn du hast alle Dinge geschaffen. (Offenbarung 4,11)
    (zur aktuellen Losung)
    1. Ja das Problem ist die (Endlos)Schleife wie mach ich des??

      Es geht hier nicht darum meine Hausaufgabe zu machen. Wie man sieht habe ich den Großteil ja schon selber gemacht es fehlt halt noch ein Teil den ich nicht hinbekomme.Also falls mir jemand einen konstruktiven Tip geben kann wäre das echt super.

      1. Ja das Problem ist die (Endlos)Schleife wie mach ich des??

        wozu auch immer sowas *unnötiges* gebraucht wird... gehen würd es evtl so:

        abc = true;

        while( abc ) {

        //native code

        }

        stopit = function () {

        window.abc = false;

        }

        dann halt noch:

        <span onclick="stopit()">Schleife anhalten</span>

        *ungetestet* vlt klappts auch nit... probiers halt aus

        un lass in zukunft diese art von überschriften die bringen nix

        1. Hi,

          gehen würd es evtl so:

          abc = true;

          while( abc ) {
            //native code
          }

          stopit = function () {
            window.abc = false;
          }

          dann halt noch:
          <span onclick="stopit()">Schleife anhalten</span>

          Nein, so klappt es *nicht* - weil der Nutzer nie dazu kommen wird, stopit ueber Klick auf den Span aufzurufen.
          Die Endlosschleife "blockiert" die Interaktion mit dem restlichen Seiteninhalt vollstaendig.

          Wenn man so etwas realisieren will, dann muss man die "Endlosschleife" ueber setTimeout/setInterval realisieren - so dass in der Abarbeitung des JavaScript-Codes immer wieder kleine zeitliche "Luecken" entstehen, in denen das UI des Browsers sich wieder um sonstiges, wie bspw. das Klicken auf ein Element in der Seite, kuemmern kann.

          Btw: Auch wenn die bisherigen Ueberschriften im Threadverlauf sicherlich nicht sonderlich clever gewaehlt waren - deine ist nicht minder daemlich.

          MfG ChrisB

          1. Hallöle!

            Btw: Auch wenn die bisherigen Ueberschriften im Threadverlauf sicherlich nicht sonderlich clever gewaehlt waren - deine ist nicht minder daemlich.

            Danke! Ich habe gestern abend wirklich dreimal angesetzt, um dem Mr. JavaScript eben dieses mitzuteilen und hab's dann gelassen, weil ich mich sonst genauso im Ton vergriffen hätte wie er. Folglich setze ich jetzt ein

            FULL ACK

            darunter.

            File Griese,

            Stonie

            --
            It's no good you trying to sit on the fence
            And hope that the trouble will pass
            'Cause sitting on fences can make you a pain in the ass.
            Und im Übrigen kennt auch Stonie Wayne.
          2. Hallo Chris,

            Auch wenn die bisherigen Ueberschriften im Threadverlauf sicherlich nicht sonderlich clever gewaehlt waren - deine ist nicht minder daemlich.

            ich widerspreche hiermit offen dem Dämlichkeitsvorwurf gegen meinen wohl weise gewählten Betreff.

            Grüße aus Stockholm,
            Götz

            --
            Losung für Montag, 21. April 2008
            HERR, die Erde ist voll deiner Güte; lehre mich deine Gebote. (Psalm 119,64)
            Christus spricht: Der Tröster, der Heilige Geist, den mein Vater senden wird in meinem Namen, der wird euch alles lehren und euch an alles erinnern, was ich euch gesagt habe. (Johannes 14,26)
            (zur aktuellen Losung)
            1. Hi,

              ich widerspreche hiermit offen dem Dämlichkeitsvorwurf gegen meinen wohl weise gewählten Betreff.

              Einigen wir uns doch darauf, dass er zwar allgemein betrachtet vermutlich nicht immer der Weisheit letzter Schluss waere - du dich aber erfolgreich auf das Level des OP begeben hast, um ihn, gefluegeltes Word, "dort abzuholen, wo er steht".

              Aendert nix daran, dass Mr. JavaScript weit daneben gelangt hat.

              MfG ChrisB

              1. hallo ChrisB,

                gefluegeltes Word

                Wow, wenn Microsoft _das_ mitkriegt ...

                Grüße aus Berlin

                Christoph S.

                --
                Visitenkarte
                ss:| zu:) ls:& fo:) va:) sh:| rl:|
  2. hallo,

    Und zwar fehlt bei dem Programm noch das die Rechnung so lange durchlaufen soll (Endlosschleife) bis man sie mit einem Button beendet.

    Warum willst du denn sowas machen?

    Hat jemand eine Idee wie des geht?

    Wie man aus einem vorgegebenen Nettobetrag einen Bruttobetrag ermittelt? Die Idee steht selbstverständlich in SELFHTML.

    Anbei mein Quellcode der so weit glaube ich funzt.

    Das tut er keineswegs. Es geht bereits damit los, daß du verbotnerweise im Headerbereich <span> unterbringen willst. Und so weit auf die Schnell zu überblicken ist, tut dein bißchen Javascript überhaupt nichts. Und insgesamt geht es kunterbunt durcheinander mit Scriptbereichen und HTML.

    Was willst du denn gerne tun? Nur Netto in Brutto umrechnen oder soll jemand gegebenenfalls auch mehrere Sachen in deiner Liste ankreuzen und bestellen dürfen? Dann müßtest du die ermittelten Werte lediglich addieren, was ohne "Schleife" möglich wäre.

    Grüße aus Berlin

    Christoph S.

    --
    Visitenkarte
    ss:| zu:) ls:& fo:) va:) sh:| rl:|
    1. Hi.
      Also der eigentliche Sinn soll sein das aus den Werten in der Tabelle der Bruttobetrag und die Mwst berechnet wird.
      Und unterhalb der Tabelle ausgegeben wird so wie ich es gemacht habe.
      Es soll nichts in der Tabelle verändert werden oder des gleichen.
      Und das Programm soll so gestaltet werden das es nach einer Abfrage vom Benutzer beendet werden kann ansonsten soll es von neuem gestartet werden.

  3. Mahlzeit,

    Also ich brauch eure Hilfe weil ich echt nicht mehr weiter komme. Und zwar fehlt bei dem Programm noch das die Rechnung so lange durchlaufen soll (Endlosschleife) bis man sie mit einem Button beendet.

    Was soll das bedeuten? Was soll "so lange durchlaufen"? Du rechnest 5 Artikel zusammen, addierst die Mehrwertsteuer und schreibst dann zweimal den Bruttopreis (sinnvoll?) und den Mehrwertsteuerbetrag in zwei Eingabeelemente - was soll da "als Endlosschleife" laufen?

    Anbei mein Quellcode der so weit glaube ich funzt.

    Tut er sicherlich nicht. Allein schon, weil er kein valides HTML enthält:

    <HTML>
    <span class="Stil3">Aufgabe 7 - Brutto/Netto</span><p>

    <html> darf weder <span> noch <p> als http://de.selfhtml.org/html/referenz/elemente.htm#html@title=Kindelemente haben. Durch das Verwenden von Elementen, die eigentlich nur im <body> vorkommen dürfen, wird normalerweise vom Browser implizit ein <body> geöffnet - so dass das folgende <head> und alle Tags, die eigentlich dort hineingehören, ignoriert werden (sollten) ... Du machst es dem Browser echt nicht leicht.

    <HEAD>
    <TITLE>
    </TITLE>

    Hm, das im <head> zwingend notwendige <title> ist vorhanden - aber <http://de.selfhtml.org/html/referenz/elemente.htm#title@title=darf es auch leer sein>?

    </HEAD>
    <br>
    <br>
    </p>

    Irgendwie fehlt mir hier das öffnende <body> ... außerdem ist es nicht besonders guter Code, wenn Du HTML-Tags mal klein und mal groß schreibst - bleibe bei einer Schreibweise, wobei ich im Hinblick auf XHTML Kleinschreibung empfehlen würde.

    <table border="2"cellspacing=2 bordercolor=black width="460">

    Ich würde empfehlen, zwischen den einzelnen Attributen mindestens ein Leerzeichen und die Attributwerte IMMER in Anführungszeichen zu setzen - erhöht die Lesbarkeit, macht es dem Browser einfacher und ist XHTML-konform.

    <p>
    <p>
    </p>

    Wo schließt Du den ersten Absatz und was soll der leere Absatz?

    <p>
    </p>

    Schon wieder ein leerer Absatz?

    </span></p>

    Aha, hier wird der erste Absatz geschlossen ... sind die zwei leeren Absätze in diesem Absatz wirklich notwendig?

    <form>

    </form>

    Ein leeres Formular? Sicher?

    <script type="text/javascript">
    <!--

    Javascript auszukommentieren ist nicht nötig.

    var Tretlager;
    var Tretkurbel;
    var Sattelstütze;
    var Lenker;
    var Vorbau;
    var Nettopreis;
    var Bruttopreis;
    var Mehrwertsteuer;

    Tretlager=123.00;
    Tretkurbel=78.50;
    Sattelstütze=29.80;
    Lenker=47.20;
    Vorbau=29.40;
    Nettopreis=0;
    Bruttopreis=0;
    Mehrwertsteuer=0;

    Du kannst Variablen auch einfacher initialisieren:

    var Tretlager = 123.00;
    var Tretkurbel = 78.50;
    [...]

    Was ich mich allerdings frage: Du hast diese Information dann zweimal im Dokument - einmal im HTML-Code in der Tabelle und einmal im Javascript-Code. Irgendwie erscheint mir das alles ziemlich irrsinnig ...

    document.getElementById("Bruttopreis1").value=(Bruttopreis);
    document.getElementById("Bruttopreis2").value=(Bruttopreis);
    document.getElementById("Mehrwertsteuer1").value=(Mehrwertsteuer);

    Wofür setzt Du hier die Variablen in Klammern?

    <style type="text/css">
    <--!

    CSS auszukommentieren ist noch blödsinniger als Javascript auszukommentieren - insbesondere, wenn Du noch nicht einmal korrekte http://de.selfhtml.org/html/allgemein/kommentare.htm#nicht_angezeigt@title=HTML-Kommentare benutzt.

    .Stil1 {font-size:14px; color:#000000; font-weight: bold;
    }
    .Stil2 {font-size: 9px; color:#000000;}

    .Stil3 {font-size: 25px; color:blue; font-weight: bold; text-decoration: underline;}
    }

    "Stil1" bis "Stil3" sind absolut suboptimale Benennungen für Klassen. Immerhin sollten diese semantisch deutlich machen, welche Art von Information sie enthalten. Also eher sowas wie "Hervorgehoben", "Zwischensumme" oder "Bildunterschrift".

    </BODY >

    Ähm, welches <body> schließt Du hier noch gleich?

    Sorge erstmal dafür, dass Du valides HTML erzeugst - anschließend kannst Du Dir dann nochmal genau überlegen, was Du eigentlich in Javascript programmieren willst ... Stichwort "Endlosschleife" ...

    MfG,
    EKKi

    --
    sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
    1. Hi,

      Hm, das im <head> zwingend notwendige <title> ist vorhanden - aber <http://de.selfhtml.org/html/referenz/elemente.htm#title@title=darf es auch leer sein>?

      Ja, es darf (zumindest aus technischer Sicht - #PCDATA darf auch die Länge 0 haben). Inwieweit das sinnvoll ist, ist eine ganz andere Frage.

      cu,
      Andreas

      --
      Warum nennt sich Andreas hier MudGuard?
      O o ostern ...
      Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.