Marco Schulze: JS-Abfrage in Tabelle

Problem.

Ich moechte in jede einzelne zelle einer tabelle nach ein zeichen abfragen.
jede zelle soll erstmal als eingabefeld fungieren.
wenn eine richtige eingabe erfolgt bleibt das ergebnis in der zelle stehen, andererseits passiert nicht.

ich gehe davon aus , das man es mit einer ifelse-abfrage loesen kann, aber ich bin mir nicht sicher wie ich es realisieren soll/kann.

  1. Hi
    Ja, du kannst das mit einer if Abfrage machen. Die Frage ist, was hast du probiert, und woran bist du gescheitert?
    Um konkrete Hilfen geben zu koennen muesstest du dein Problem genauer beschreiben oder noch besser, uns eine URL oder etwas Quelltext liefern.
    Wie man auf Vorhandensein eines Zeichens untersucht steht hier: <../../tecl.htm#a14>
    Wie man Eigabefelder anspricht steht hier: <../../tecbbda.htm#a8>
    Tschau Holger

    1. Hallo Holger

      erst mal danke fuer deinen tip
      ich habe diese folgende tabelle.(ein kleiner ausschnitt)

      in den angesprochenen zellen moechte ich einzelne buchstaben ansprechen.
      z.b in einer zelle soll eine abfrage fuer den buchstaben d erfolgen in der naechsten eine abfrage fuer den buchstaben e   und so weiter.

      meine vorstellung ist ,das sobald der buchstabe richtig eingegeben wurde er stehen bleibt und man sich mit den naechsten buchstaben weitermachen kann.

      eine andere idee meinerseits waere, das man eine abfrage macht, die richtig oder falsch geantwortet wird.
      erfolgt eine richtige antwort wird ein buchstabe, der bisher nicht sichtbar war wieder sichtbar.
        
      <table border=1  bgcolor=#CCCCCC bordercolor=#FFFFFF cellspacing=0 cellpadding=1>
      <tr bgcolor=#FFFFFF>
      <td colspan=7> </td>
      <td align=center>9</td>
      <td colspan=5> </td>
      </tr>
      <tr>
      <td bgcolor=#FFFFFF>1</td>
      <td> </td>
      <td>{d:design:1}</td>
      <td>{e:design:1}</td>
      <td>{s:design:1}</td>
      <td>{i:design:1} </td>
      <td>{g:design:1} </td>
      <td bgcolor=#FFFF00>{n:design:1}</td>
      <td colspan=5></td>
      </tr>
      <tr>
      <td  bgcolor=#FFFFFF>2</td>
      <td colspan=2></td>
      <td>{s:style:1}</td>
      <td>{t:style:1}</td>
      <td>{y:style:1}</td>
      <td>{l:style:1}</td>
      <td bgcolor=#FFFF00>{e:style:1}</td>
      <td colspan=5></td>
      </tr>
      </table>

      1. Hi
        Ich glaube ich bin zu blöd dazu dein Problem zu verstehen:
        Wie soll den da irgendjemand eine Eingabe machen? Dafuer braucht man doch ein Input Feld, oder etwa nicht?? Ich habe das eher so verstanden:
        <html>
        <head>
        <title></title>
        <script language="JavaScript">
        <!--
        Inhalt=new Array("h","a","l","l","o","d","u","d","a","!");
        function test() {
        for (i=0;i<document.formular1.elements.length;i++){
        if (document.formular1.elements[i].value!=Inhalt[i])  document.formular1.elements[i].value="";
        }
        }
        //-->
        </script>
        </head>
        <body>
        <form name="formular1">
        <table border=1  bgcolor=#CCCCCC bordercolor=#FFFFFF cellspacing=0 cellpadding=1>
        <tr>
        <td>Wert1.0: <input type="Text" name="Wert1.0" value="" size="1" maxlength="1"></td>
        <td>Wert1.1: <input type="Text" name="Wert1.1" value="" size="1" maxlength="1"></td>
        <td>Wert1.2: <input type="Text" name="Wert1.2" value="" size="1" maxlength="1"></td>
        <td>Wert1.3: <input type="Text" name="Wert1.3" value="" size="1" maxlength="1"></td>
        <td>Wert1.4: <input type="Text" name="Wert1.4" value="" size="1" maxlength="1"></td>
        </tr>
        <tr>
        <td>Wert2.0: <input type="Text" name="Wert2.0" value="" size="1" maxlength="1"></td>
        <td>Wert2.1: <input type="Text" name="Wert2.1" value="" size="1" maxlength="1"></td>
        <td>Wert2.2: <input type="Text" name="Wert2.2" value="" size="1" maxlength="1"></td>
        <td>Wert2.3: <input type="Text" name="Wert2.3" value="" size="1" maxlength="1"></td>
        <td>Wert2.4: <input type="Text" name="Wert2.4" value="" size="1" maxlength="1"></td>
        </tr>
        </table>
        </form>
        <a href="javascript:test()">Eingaben Testen</a>
        </body>
        </html>
        vielleicht hilft dir ja dieser Ansatz.
        Tschau Holger

        1. Hallo Holger

          vielen dank fuer deine hilfe.

          du hast es richtig verstanden.
          der ansatz ist absolut richtig.

          ich habe mich vielleicht auch nicht entsprechend artikuliert.

          meine vorstellung/problem war gewesen ein kreuzwortraetzel mit hilfe einer tabelle in JS umzusetzen.

          es sollten nur einige felder angesprochen werden.damit sind die eingabefelder gemeint.
          diese felder sollten auf eingabe reagieren.
          die anderen felder sollten nicht angesprochen werden.

          ich werde es versuchen so in der grafischen form von
          url http://www.infohiway.com/javascript/indexf.htm
                    kapitel js-archive/games/crossword Puzzle
          umsetzen.

          jetzt habe ich einen ansatz

          danke