Thomas Hölscher: MachGROSS

Hi!
ich bin neu hier und habe nur beschränkte Fähigkeiten in JS. Deshalb wäre es klasse, wenn mir mal jemand helfen könnte:
Ich möchte die Varialbe der „function Suchen“ in Großbuchstaben umwandeln und dann danach suchen. Nun habe ich mir die
function MachGross() {
 neu = document.Test.Eingabe.value.toUpperCase();
 document.Test.Eingabe.value = neu;
}

rausgesucht, kriege sie aber nicht eingebaut.

Muss ich die vom Input aus aufrufen oder kann ich sie direkt in die
function Suchen()
einbinden? Und wenn, dann wie?

Danke!
Thomas

So sieht´s bisher aus:

<!--
function Suchen() {
 var Datensaetze = 1000;
 document.all.Anzeigetabelle.style.display = "none";
 var Suchausdruck = "";
 var Suchbegriffe = 0;
 if(document.Eingabe.SuchNUM.value != "") {
   Suchausdruck = Suchausdruck + "Nummer <> " + document.Eingabe.SuchNUM.value;
   Suchbegriffe++;
 }
 if(document.Eingabe.SuchAUS.value != "") {
  if(Suchbegriffe > 0)
     Suchausdruck = Suchausdruck + " & Aussage = *" + document.Eingabe.SuchAUS.value +"*" ;
   else
     Suchausdruck = Suchausdruck + "Aussage =*" + document.Eingabe.SuchAUS.value +"*";
   Suchbegriffe++;
 }

document.all.Begriffe.object.Filter = Suchausdruck;
 document.all.Begriffe.Reset();
 document.all.Anzeigetabelle.dataSrc = "#Begriffe";
 if(document.all.Begriffe.recordset.recordCount < Datensaetze) {
   document.all.Anzeigetabelle.dataPageSize = Begriffe.recordset.recordCount;
   document.all.Treffer.innerText = Begriffe.recordset.recordCount + " Suchtreffer!";
   document.all.Anzeigetabelle.style.display = "block";
 }
 else
   document.all.Treffer.innerText = "0 Suchtreffer!";
}
//-->

<form name="Eingabe" action="">
  <b><font face="Arial, Helvetica, sans-serif">Suche nach:<br>
  <input name="SuchNUM" type="text" width="40">
  (Nummer)<br>
  <input name="SuchAUS" type="text" width="40">
  (Aussage)<br>
<input type="button" style="width:150px; height:25px;" value="Suche starten" onClick="Suchen()">
</form>

  1. Tag Thomas.

    Ich möchte die Varialbe der „function Suchen“ in Großbuchstaben umwandeln und dann danach suchen. Nun habe ich mir die
    function MachGross() {
    neu = document.Test.Eingabe.value.toUpperCase();
    document.Test.Eingabe.value = neu;
    }
    rausgesucht, kriege sie aber nicht eingebaut.
    Muss ich die vom Input aus aufrufen oder kann ich sie direkt in die function Suchen() einbinden?

    Letzteres sollte zielführender sein.

    Und wenn, dann wie?

    Indem du an der Stelle, an welcher du den Wert des Eingabefeldes »suchAUS« holst, diesen in Großbuchstaben umwandelst:

    var sucheGROSS = document.Eingabe.SuchAUS.value.toUpperCase();

    Kleine Frage am Rande, soll das Script IE-only sein?

    Siechfred

    --
    »Sie kochten heimlich mit Wasser und tranken öffentlich Wein.«
    1. Tag Thomas.

      Hi Siechfred,
      danke schon mal für deine Antwort.
      ich werde es mal versuchen.
      Bin kein wirklicher JSer, brauche aber gerade was einfaches, das auf jeden Fall von CD läuft, sonst hätte es es mit CF gemacht, da kenn ich mich zumindest ETWAS besser aus. IE only wäre schon OK, weil es (erst Mal) eine reine offlinegeschichte wird,
      und die Zielgruppe zu >99% mit IE arbeitet.

      so wish me luck, denn falls ich es nicht hinkriege, bist du der Erste, der es erfährt *g*
      Grüße,
      Thomas

      Ich möchte die Varialbe der „function Suchen“ in Großbuchstaben umwandeln und dann danach suchen. Nun habe ich mir die
      function MachGross() {
      neu = document.Test.Eingabe.value.toUpperCase();
      document.Test.Eingabe.value = neu;
      }
      rausgesucht, kriege sie aber nicht eingebaut.
      Muss ich die vom Input aus aufrufen oder kann ich sie direkt in die function Suchen() einbinden?

      Letzteres sollte zielführender sein.

      Und wenn, dann wie?

      Indem du an der Stelle, an welcher du den Wert des Eingabefeldes »suchAUS« holst, diesen in Großbuchstaben umwandelst:

      var sucheGROSS = document.Eingabe.SuchAUS.value.toUpperCase();

      Kleine Frage am Rande, soll das Script IE-only sein?

      Siechfred

      1. Hi,
        ich schon wieder...
        habe es auf verschiedene Arten versucht, aber scheinbar noch nen fehler drin. Aber wo?

        so gehts nicht!

        <!--
        function Suchen() {
         var Datensaetze = 1000;
         document.all.Anzeigetabelle.style.display = "none";
         var Suchausdruck = "";
         var Suchbegriffe = 0;
         if(document.Eingabe.SuchNUM.value != "") {
           Suchausdruck = Suchausdruck + "Nummer <> " + document.Eingabe.SuchNUM.value;
           Suchbegriffe++;
         }
         if(document.Eingabe.SuchAUS.value != "") {
          if(Suchbegriffe > 0)
           var SucheGROSS = document.Eingabe.SuchAUS.value.toUpperCase();
         Suchausdruck = Suchausdruck + " & Aussage = *" + document.Eingabe.SucheGROSS.value +"*" ;
           else
              var SucheGROSS = document.Eingabe.SuchAUS.value.toUpperCase();
             Suchausdruck = Suchausdruck + "Aussage =*" + document.Eingabe.SucheGROSS.value +"*";
           Suchbegriffe++;
         }
        ________________________________________________

        so auch nicht:

        <input type="button" style="width:150px; height:25px;" value="Suche starten"
        onClick="Suchen (var SucheGROSS = document.Eingabe.SuchAUS.value.toUpperCase();)">

        1. hi,

          habe es auf verschiedene Arten versucht, aber scheinbar noch nen fehler drin. Aber wo?

          sag du's uns bitte!
          http://glasgoogle.de/

          if(Suchbegriffe > 0)
             var SucheGROSS = document.Eingabe.SuchAUS.value.toUpperCase();
          Suchausdruck = Suchausdruck + " & Aussage = *" + document.Eingabe.SucheGROSS.value +"*" ;

          abgesehen davon, dass hier nur die erste anweisung von der bedingung abhängt - was soll denn document.Eingabe.SucheGROSS.value darstellen?

          du hast doch gerade den wert aus dem feld SuchAUS ausgelesen und "groß gemacht", und diese ergebnis der variablen SucheGROSS zugewiesen - also warum verwendest du diese variable dann im nächsten schritt nicht weiter?

          Suchausdruck += " & Aussage = *" + SucheGROSS +"*"

          gruß,
          wahsaga

          --
          "Look, that's why there's rules, understand? So that you _think_ before you break 'em."
          1. Hi Wasa!

            sag du's uns bitte!

            OK, sorry!

            <!--
            function Suchen() {
             var Datensaetze = 1000;
             document.all.Anzeigetabelle.style.display = "none";
             var Suchausdruck = "";
             var Suchbegriffe = 0;
             if(document.Eingabe.SuchNUM.value != "") {
               Suchausdruck = Suchausdruck + "Nummer <> " + document.Eingabe.SuchNUM.value;
               Suchbegriffe++;
             }
            if(document.Eingabe.SuchAUS.value != "") {
              if(Suchbegriffe > 0)
               var SucheGROSS = document.Eingabe.SuchAUS.value.toUpperCase();
             Suchausdruck = Suchausdruck + " & Aussage = *" + SucheGROSS + "*"

            else
                 Suchausdruck = Suchausdruck + "Aussage =*" + SucheGROSS + "*";
               Suchbegriffe++;
             }

            OK,
            Beim "else" (hier in der 4. Zeile von unten) findet er einen Syntaxfehler. ICH finde ihn nicht...

            wenn ich die if-Bedingung mal rauswerfe, findet er immer noch:
            "document.Eingabe.SucheGROSS.value ist null oder kein Objekt"

            in der Zeile

            Suchausdruck = Suchausdruck + " & Aussage = *" + SucheGROSS + "*"

            hmmm....

            du hast doch gerade den wert aus dem feld SuchAUS ausgelesen und "groß gemacht", und diese ergebnis der variablen SucheGROSS zugewiesen - also warum verwendest du diese variable dann im nächsten schritt nicht weiter?

            Suchausdruck += " & Aussage = *" + SucheGROSS +"*"

            TOTAL guter Einwand!!! Hab ich gemacht. aber wohl immer noch falsch!?
            Mann-o-mann...
            Danke schon mal
            Thomas

            gruß,
            wahsaga

            1. hi,

              Beim "else" (hier in der 4. Zeile von unten) findet er einen Syntaxfehler. ICH finde ihn nicht...

              das dürfte m.E. daran liegen, dass du (wie im vorherigen post schon gesagt) die anweisungen hinter dem if nicht zu einem anweisungsblock zusammengefasst hast.

              if(Suchbegriffe > 0)
                 var SucheGROSS = document.Eingabe.SuchAUS.value.toUpperCase();
              Suchausdruck = Suchausdruck + " & Aussage = *" + SucheGROSS + "*"
              else

              ohne das hängt nur die nächstfolgende anweisung von der if-bedingung ab, die anschließende (Suchausdruck =  ...) ist vom if unabhängig, wird immer ausgeführt.

              und danach kommt jetzt ein else, zu dem kein vorhergehendes if vorhanden ist - denn nach der einen einsamen anweisung nach dem if ist dieses _beendet_.

              und ein alleine rumstehendes else ist nun mal ein fehler.

              gruß,
              wahsaga

              --
              "Look, that's why there's rules, understand? So that you _think_ before you break 'em."
              1. genau das wars, hattest Recht.
                Thanx!
                T