H²O: Frage-Antwort-Spiel (2 Textfelder): 3 Fragen an euch

Hallo.

Ich habe es geschafft. Ein kleines Frage Antwort Spiel hinzukriegen.
Oben schreibt man was rein. Unten kommt die Antwort.
Das Script seht ihr unten. Schreibt man z.B. "Nachricht 1" ist die Antwort "aaa111".
Schreibt man "Nachricht 2" ist die Antowrt "bbb222".

Nun habe ich drei Fragen:
1.: Wie schaffe ich es, dass es dem Script egal ist ob man groß oder klein schreibt?

2.: Wie schaffe ich es, dass sobald auf den Button gedrückt wurde oder Enter gedrückt wurde und damit auch die Antwort erscheint das erste Feld leer ist?

3.: Wie schaffe ich es, dass sobald das Script irgendein Wort findet es die bestimmte Antwort in Feld 2 schreibt. Beispiel:
Ich schreibe: Hier ist die Nachricht 1.
Nun sollte die Nachricht auch erscheinen, auch wenn der PC das Vorgegebene nicht alleine wiederfindet.

Wenn ihr nicht auf alle Fragen eine Antwort wisst, dann schreibt einfach das, was ihr wisst.

Vielen, vielen Dank H²O

Hier ist das Script:

<html>
<head>
<meta name="author" content="">
<title>Beispiel - Textfeld überprüfen</title>

</head>
<body>
<center>
Felder freilassen und dann abschicken.<br>
<br>

<!-- hier beginnt das script //-->

<script LANGUAGE="JavaScript">
function test() {

if (document.forms[0].elements[0].value == "Nachricht 1"){
            document.forms[0].elements[1].value = "aaa111"
            document.forms[0].elements[0].focus();
              return false;
        }

if (document.forms[0].elements[0].value == "Nachricht 2"){
            document.forms[0].elements[1].value = "bbb222"
            document.forms[0].elements[0].focus();
              return false;
        }

}
//--</script>

<table border=1 bgcolor="#0000A0">
<form method="POST" action="" onSubmit="return test()">
<tr>
<td>Was???</td>
<td><input type="text" size="30"></td>
</tr>
<tr>
<td>Antwort:</td>
<td><input type="text" size="30"></td>
</tr>
<tr>
<td colspan=2><center><input type="submit" value="abschicken"></center></td>
</tr>
</form>
</table>
<br>
</center>

</body>
</html>

  1. Hi!

    1.: Wie schaffe ich es, dass es dem Script egal ist ob man groß oder klein schreibt?

    http://selfhtml.teamone.de/javascript/objekte/string.htm#to_lower_case
    müsste dier helfen.

    2.: Wie schaffe ich es, dass sobald auf den Button gedrückt wurde oder Enter gedrückt wurde und damit auch die Antwort erscheint das erste Feld leer ist?

    Ergänze hierzu noch document.forms[0].elements[0].value == "";:

    if (document.forms[0].elements[0].value == "Nachricht 1"){
                document.forms[0].elements[1].value = "aaa111"
                document.forms[0].elements[0].focus();
                  return false;

    3.: Wie schaffe ich es, dass sobald das Script irgendein Wort findet es die bestimmte Antwort in Feld 2 schreibt. Beispiel:
    Ich schreibe: Hier ist die Nachricht 1.
    Nun sollte die Nachricht auch erscheinen, auch wenn der PC das Vorgegebene nicht alleine wiederfindet.

    Verstehe die Frage nicht. Helfe aber bei genauerer Erklärung gerne weiter...

    1. Hi

      Danke für die 2 Antoworten.

      Ergänze hierzu noch document.forms[0].elements[0].value == "";:

      if (document.forms[0].elements[0].value == "Nachricht 1"){
                  document.forms[0].elements[1].value = "aaa111"
                  document.forms[0].elements[0].focus();
                    return false;

      Wie ist das mit dem ergänzen gemeint? Wo muss ich das einfügen?

      Zu meiner dritten Frage:

      Also: Ich habe ja angegeben, dass der PC, wenn jemand "Nachricht 1" schreibt "aaa111" schreiben soll. Wie mache ich es jetzt, dass er "aaa111" auch schreibt, wenn es nicht alleine im Textfeld steht. Also wenn davor z.B. noch "hallo, Nachricht 1" steht soll er trotzdem "aaa111" schreiben.

      H²O

      1. Hi!

        Also: Ich habe ja angegeben, dass der PC, wenn jemand "Nachricht 1" schreibt "aaa111" schreiben soll. Wie mache ich es jetzt, dass er "aaa111" auch schreibt, wenn es nicht alleine im Textfeld steht. Also wenn davor z.B. noch "hallo, Nachricht 1" steht soll er trotzdem "aaa111" schreiben.

        Schau dir dazu mal http://selfhtml.teamone.de/javascript/objekte/string.htm#index_of an. DAmit müsstest du das hinriegen.

        mdkiller

        1. Hi

          Schau dir dazu mal http://selfhtml.teamone.de/javascript/objekte/string.htm#index_of an. DAmit müsstest du das hinriegen.

          Ja, danke, ich denke das krieg ich hin. Ansonsten melde ich mich nochmal.

          Vielen Dank

        2. Hallo.

          Schau dir dazu mal http://selfhtml.teamone.de/javascript/objekte/string.htm#index_of an. DAmit müsstest du das hinriegen.

          Entschuldige. Aber ich krieg's einfach nicht hin.
          Ich habe schon alles ausprobiert.

          Muss ich das Teil zu einer Funktion machen oder wie soll ich das machen.

          Entschuldige mdkiller. Aber ich krieg's einfach nicht hin.

          H²O

      2. Hi

        Danke für die 2 Antoworten.

        Ergänze hierzu noch document.forms[0].elements[0].value == "";:

        if (document.forms[0].elements[0].value == "Nachricht 1"){
                    document.forms[0].elements[1].value = "aaa111"
                    document.forms[0].elements[0].focus();
                      return false;

        Wie ist das mit dem ergänzen gemeint? Wo muss ich das einfügen?

        Oh, gar nicht gesehen:

        if (document.forms[0].elements[0].value == "Nachricht 1"){

        document.forms[0].elements[0].value == "";

        document.forms[0].elements[1].value = "aaa111"
                    document.forms[0].elements[0].focus();
                      return false;

        War aber nicht allzu schwer, oder?

        md

        1. Hallo

          if (document.forms[0].elements[0].value == "Nachricht 1"){
                          document.forms[0].elements[0].value == "";
                      document.forms[0].elements[1].value = "aaa111"
                      document.forms[0].elements[0].focus();
                        return false;

          Funktioniert das bei dir? Bei mir bringt das nichts. Das erste Feld ist noch immer gefüllt und ich bekomme es selbst auch nicht hin.

          H²O

          1. Hallo!

            document.forms[0].elements[0].value == "";

            Sorry, ersetze == durch =

            H²O

            mdkiller

            1. Ja. Ich habe es auch bemerkt.

              Ich habe einfach die Zeile darunter kopiert und die 1 in eine 0 umgeändert.

              Danke H²O

        2. Hi

          if (document.forms[0].elements[0].value == "Nachricht 1"){
                          document.forms[0].elements[0].value == "";
                      document.forms[0].elements[1].value = "aaa111"
                      document.forms[0].elements[0].focus();
                        return false;

          Ich weiß nicht, ob es bei dir klappt, aber ich krieg das einfach nicht hin. Der PC beachtet die Zeile gar nicht. Wie muss das denn aussehen, damit es wirklich funkzioniert?

          H²O

          1. Hi

            if (document.forms[0].elements[0].value == "Nachricht 1"){
                            document.forms[0].elements[0].value == "";
                        document.forms[0].elements[1].value = "aaa111"
                        document.forms[0].elements[0].focus();
                          return false;

            Ich weiß nicht wo der Fehler lag, aber ich habe es geschafft. Es klappt endlich. Jetzt muss ich mir nur noch die Antwort auf Frage 3 zusammenbasteln.

            Nochmal vielen Dank mdkiller

            H²O

    2. Hi

      Danke für die Antoworten.

      Ergänze hierzu noch document.forms[0].elements[0].value == "";:

      if (document.forms[0].elements[0].value == "Nachricht 1"){
                  document.forms[0].elements[1].value = "aaa111"
                  document.forms[0].elements[0].focus();
                    return false;

      Wie ist das mit dem ergänzen gemeint? Wo muss ich das einfügen?

      Zu meiner dritten Frage:

      Also: Ich habe ja angegeben, dass der PC, wenn jemand "Nachricht 1" schreibt "aaa111" schreiben soll. Wie mache ich es jetzt, dass er "aaa111" auch schreibt, wenn es nicht alleine im Textfeld steht. Also wenn davor z.B. noch "hallo, Nachricht 1" steht soll er trotzdem "aaa111" schreiben.

      H²O

      1. Sorry

        Entschuldigung. Ich habe es aus Versehen doppelt geschrieben. Es gab irgendwelche Probleme mit der Darstellung mit meinem PC. Er hat das zuerst nicht dargestellt.

        Sorry

        H²O

  2. Hi

    3.: Wie schaffe ich es, dass sobald das Script irgendein Wort findet es die bestimmte Antwort in Feld 2 schreibt. Beispiel:
    Ich schreibe: Hier ist die Nachricht 1.
    Nun sollte die Nachricht auch erscheinen, auch wenn der PC das Vorgegebene nicht alleine wiederfindet.

    Ich bekomme das leider nicht hin mdkiller. Wäre nett, wenn du mir deinen Link zu http://selfhtml.teamone.de/javascript/objekte/string.htm#index_of nochmal erklärst.

    Muss ich dem JavaScript eine Funktion geben oder wie???

    Ich dachte ich kriege es selber hin, aber das ist leider nicht der Fall.

    Sorry

    H²O

    1. Hallo Wasser!

      Also: Ich habe ja angegeben, dass der PC, wenn jemand "Nachricht 1" schreibt "aaa111" schreiben soll. Wie mache ich es jetzt, dass er "aaa111" auch schreibt, wenn es nicht alleine im Textfeld steht. Also wenn davor z.B. noch "hallo, Nachricht 1" steht soll er trotzdem "aaa111" schreiben.

      Auch wenn ich wahrscheinlich gleich Ärger kriege:

      var wert = document.forms[0].elements[0].value;
      if (wert.indexOf("Nachricht 1")>-1){[...]} //Rest kriegst du wohl hin...

      Gruß
      mdkiller

      1. Hallo Wasser!

        Na, endlich mal jemand, de weiß, was H²O heißt...

        Auch wenn ich wahrscheinlich gleich Ärger kriege:

        Ärger würde ich es nicht nennen.

        var wert = document.forms[0].elements[0].value;
        if (wert.indexOf("Nachricht 1")>-1){[...]} //Rest kriegst du wohl hin...

        Wie war das mit dem Rest ...

        Also, ich habe es selber schon ausprobiert, aber irgendwie klappt es nicht:

        <script type="text/javascript">
        <!--
         var wert = document.forms[0].elements[0].value;
         if (wert.indexOf("a")>-1){[
                    document.forms[0].elements[0].value = "";
                    document.forms[0].elements[1].value = "Hi";
                    document.forms[0].elements[0].focus();
                    return false;
        ]}
        //-->
        </script>

        Was stimmt da nicht???

        Nochmal vielen, vielen Dank mdkiller
        Echt: Danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke

        1. Hallo mdkiller.

          Ich wollte nur noch schnell fragen, ob ich das Script zu einer Funktion machen muss und wenn du mir noch sagst, was ich zwischen die [ ] schreiben muss. Was stimmt an dem Script in dem Post hierdrüber denn nicht???

          Nochmal vielen Dank H²O

          PS: Ich habe mir mal deinen Selfcode angesehen:

          ss:| könntest du ruhig umändern in ss:).

          Ich kann kleinere Probleme lösen, bin aber kein Experte. Du bist doch verdammt gut.

          Ach übrigens: Wie bindet man einen Selfcode eigentlich in einen Post ein?

          Also danke (ach ne, das steht ja schon da oben)

          1. Hi Wasser!

            Nochmal vielen Dank H²O

            Bite, bitte, gern geschehen...

            PS: Ich habe mir mal deinen Selfcode angesehen:

            ss:| könntest du ruhig umändern in ss:).

            Nö, ss:| bezieht sich auf Serverseitige Sachen und da zählt JS nicht zu...

            Ich kann kleinere Probleme lösen, bin aber kein Experte. Du bist doch verdammt gut.

            Mit ein bisschen Übung wird das was *g*. Einfach irgendwas basteln, wenn man nicht weiterkommt, lesen und wenn man es dann immer noch nihct rafft, fragen. So hab ich das auch gemacht...

            Ach übrigens: Wie bindet man einen Selfcode eigentlich in einen Post ein?

            Du gehst zuerst auf http://forum.de.selfhtml.org/cgi-bin/selfcode.pl und rechnest ihn dir aus. Danach gehst du im </my/>-Bereich in die Konfiguration und hängst den Code als Signatur rein...

            Gruß

            mdkiller

  3. Hallo mdkiller.

    Ich wollte nur sagen: Alle Fragen sind jetzt geklärt. Ich habe es endlich geschafft.

    Nochmal vielen Dank für alles.

    Vielleicht kann ich mich bei beantworten irgendwann mal revangieren (wenn man das so schreibt).

    Also: Danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke, danke

    Noch einen schönen Abend wünscht H²O

    PS: Nochmal vielen vielen Dank für alles

    1. Hi!

      Vielleicht kann ich mich bei beantworten irgendwann mal revangieren (wenn man das so schreibt).

      Nö: revanchieren.

      Gruß

      mdkiller