blackdespair: Suchfunktion mit Einschränkung

Hallo Leute,

Ich habe eine Frage zu einer Such (Vergleichfunktion).
Momentan verwende ich eine sehr "dumme" Suche welche einfach nur das eingegebene Wort mit einer Liste Vergleicht und dann die restlichen Werte ausspuckt.

Ich würde nun gerne die Suche so auf bauen das wenn eine Checkbox ausgewählt wird bei der Suche noch andere Parameter berücksichtigt werden.

Hier das Script momentan:

--------------------------------------------------------------------
--------------------------------------------------------------------
    Number  = new Object();
    Keyword = new Object();
    Descrip = new Object();
    Case    = new Object();

Case   [0] = 2
Keyword[0] = 2
Number [0] = 2
Format [0] = 2

Number [1] = "1a"
Case   [1] = "a"
Keyword[1] = "test1"
Descrip[1] = "Test 1"

Number [2] = "2b"
Case   [2] = "b"
Keyword[2] = "test2"
Descrip[2] = "Test 2"

function checkDatabasename()
 {
      var Found = false
      var Item = document.forms[0].searchfor.value.toLowerCase();

MsgBox.document.write ("blablabla");
        for (var i=1; i <= Keyword[0]; i++)
{
   if(Item == Keyword[i])
{
Found = true;
MsgBox.document.write ("Ausgabe")
        }
       }
      if(!Found)
MsgBox.document.write ("Kein Fund")
  }

--------------------------------------------------------------------
--------------------------------------------------------------------

mir geht es darum das bei der Ausgabe noch der Wert "case" berücksichtigt wird.
Ich denke eigentlich das dies nicht so aufwendig ist, leider komme ich hierbei allerdings auf keinen grünen Zweig und würde mich über Hilfe und Anregungen freuen.

Vorab vielen Dank.

  1. Hallo blackdespair,

    mir geht es darum das bei der Ausgabe noch der Wert "case" berücksichtigt wird.

    was meinst du damit? Soll Case auch überprüft werden?

    if(Item == Keyword[i] || Item == Case[i])

    Oder soll Case Ausgegeben werden?

    MsgBox.document.write ("Ausgabe" + Case[i]);

    Gruß, Jürgen

    1. Hallo Jürgen,

      danke für deine Antwort.
      Case soll mitabgefragt werden.
      Ich möchte mit checkboxen festlegen in welchem "case" gesucht wird.
      z.B. nur in Case = A  oder nur in Case = B

      Mit der Funktion:
       if(Item == Keyword[i] || Item == Case[i])

      Würde er ja zur Caseabfrage auf die gleiche variable zurückgreife welche er zur suche verwendet. Kann man da eine weitere If Schleife einbauen welche nur wenn eine checkbox aktiviert ist nach einem "case" schlüsselt.

      Gruß blackdespair

      1. Hallo blackdespair,

        irgendwie verstehe ich jetzt dein Problem nicht mehr. Nimm doch einfach ein zweites Eingabefeld und überprüfe es analog zum ersten:

        var Item2 = document.forms[0].case.value.toLowerCase();
                                         ^ oder wie das neue Feld heißt

        if(Item == Keyword[i] && Item2 == Case[i])

        (Wenn Item identisch mit Keyword und Item2 identisch mit Case)

        Gruß, Jürgen

        PS Es gibt keine "if-Schleifen"

        1. Hallo Jürgen,

          var Item2 = document.forms[0].case.value.toLowerCase();
                                           ^ oder wie das neue Feld heißt

          if(Item == Keyword[i] && Item2 == Case[i])

          (Wenn Item identisch mit Keyword und Item2 identisch mit Case)

          Ok, das leuchtet mir soweit ein allerdings habe ich bei dieser Bedingung das Problem das es sich ja dann nicht mit einer Checkbox umsetzen lässt.
          Desweiteren muss dann ein "case" angegeben werden sonst wird nichts mehr gefunden.
          Ich würde wenn es dann wie gedacht funktioniert dies für alle werte anwendne wollen.
          Ich habe das Script nämlich auf die nötigsten Variablen beschrenkt. Im eigentlichen Script sind noch mehr Variablen vorhanden.

          Mit If-Schleife meinte ich keine schleife sondern nur die bedingung.

          If checkbox1  == checked
          // Suche in "case" A

          If checkbox2  == checked
          // Suche in "case" B

          If checkbox3  == checked
          // Suche in "case" C

          Und wenn alle 3 checkboxen aktiviert sind soll er in allen 3 suchen.

          Gruß blackdespair

          1. Hallo blackdespair,

            If checkbox1  == checked
            // Suche in "case" A

            if(Item == Keyword[i] && Case[i] == "a")

            usw.

            Und wenn alle 3 checkboxen aktiviert sind soll er in allen 3 suchen.

            die Logik musst du dir jetzt selbst überlegen.

            Gruß, Jürgen

            1. Ok,

              dann fang ich mal an etwas zu basteln.

              Danke für deine Hilfe

              Gruß blackdespair