HTML Bruchrechner funktioniert nicht richtig

  • Hi,

    ich bin dabei einen einfachen Bruchrecher zu schreiben, der Zufällige Zahlen angibt und ich dann das Ergebnis hinschreiben muss, und wenn es stimmt soll ein Popup fenster mit RICHTIG und wenn nicht eins mit FALSCH kommen. Doch irgendwie kommt egal was ich schreibe das RICHTIG fenster, da die Zahl irgendwie zur Richtigen geändert wird.
    Außerdem wenn ich den else befehl angebe werden keine zufälligen Zahlen mehr gemacht :(
    ich kenn mich nicht so gut aus mit Html, erst vor kurzem angefangen.

    hier ist mal das Programm:

    <html>
    <head>

    <h1><center> Bruchrechnung </center></h1>

    <script text="text/javascript">

    function random()
    {

    document.Bruch.Feld1.value = parseInt(Math.random()*9 + 1);
    document.Bruch.Feld2.value = parseInt(Math.random()*9 + 1);
    document.Bruch.Feld3.value = parseInt(Math.random()*9 + 1);
    document.Bruch.Feld4.value = parseInt(Math.random()*9 + 1);
    }

    function reload()
    {
    location.replace('java2.html')
    }

    function Rechnen()
    {
    var A = document.Bruch.Feld1.value;
    var B = document.Bruch.Feld2.value;
    var C = document.Bruch.Feld3.value;
    var D = document.Bruch.Feld4.value;

    if ((document.Bruch.Eingabe1.value = A*D + B*C) && (document.Bruch.Eingabe2.value = B*D))
    {
    alert("Richtig!")
    }

    }


    </script>
    </head>


    <body onload="random()">


    <center><input type="button" value="Neu Laden" name="Neu Laden" onclick="reload()">

    <form name="Bruch" >

    <p> Schreibe das Ergebnis rechts in das Lösungsfeld: </p>

    <input type="text" size="5" value="" name="Feld1" readOnly="write">

    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

    <input type="text" value="" size="5" name="Feld3" readOnly="write">

    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

    <input type="number" value="" name="Eingabe1" size="5"> <br>

    _________ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; + &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    _________ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; __________________ <br>

    <input type="Text" size="5" value="" name="Feld2" readOnly="write">

    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

    <input type="text" value="" size="5" name="Feld4" readOnly="write">

    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

    <input type="number" value="" name="Eingabe2" size="5"> <br>

    <input type="button" name="Berechnen" value="Überprüfen" onclick="Rechnen()" <br>

    </form></center>

    </body>

  • Darüber, dass dein HTML Code zum weinen ist, müssen wir ja glaubs nicht reden, oder?

    Was dein JavaScript problem angeht machst du einen beliebten Anfängerfehler.

    Code
    [COLOR=#333333]if (([/COLOR][COLOR=#ff0000]document.Bruch.Eingabe1.value = A*D + B*C[/COLOR][COLOR=#333333]) && ([/COLOR][COLOR=#ff0000]document.Bruch.Eingabe2.value = B*D[/COLOR][COLOR=#333333]))[/COLOR]
    [COLOR=#333333]{ [/COLOR]
    [COLOR=#333333]alert("Richtig!")[/COLOR]
    [COLOR=#333333]}[/COLOR]

    Bei den beiden rot markierten Ausdrücken handelt es sich um Zuweisungen (= Operator), das heisst, du schreibst die richtige Lösung in die Eingabefelder. Deshalb trifft die if-Bedingung auch immer zu, da die Zuweisung ja immer gelingt. Was du aber eigentlich machen willst, ist ein Vergleich. Dazu wird der Operator == , also 2 Gleichheitszeichen verwendet.