Holger Ahlrichs: Formular mit "checkbox-auswahl"

Hallo zusammen,
ich möchte ein Formular erstellen mit einem input type="text"  (a) und drei input type="checkbox" (b, c und d).
Falls nur etwas in dem input type="text" eingetragen wird, soll ein Wert a als query "wertauswahl"  submitted werden. Falls input type="text" Inhalt hat und checkbox b aktiviert wird a+b als "wertauswahl" übergeben. Bei text und checkbox b und c der wert a+b+c, usw.

Vor der Übergabe soll der zusammengestelle Wert noch noch einen Zusatz bekommen (klammern). Das sieht dann so aus wertauswahl=" @(a+c+d)"

Wer kann in diesem Fall helfen ? Gut wäre es in asp, javascript is aber auch ok !

Vielen, vielen Dank im voraus
Holger

  1. Hallo,

    das ist in asp eigentlich recht leicht zu realisieren:

    Dim wertauswahl, varvalue

    wertauswahl = request.form("a")
    for each varvalue in request.form("checkbox")
     wertauswahl = wertauswahl & varvalue
    next

    if wertauswahl <> "" then
     wertauswahl = "@(" & wertauswahl & ")"
    else
     'nichts eingegeben und gecheckt
     deincode
    end if

    den 3 Boxen gibst Du den gleichen Namen, nur das Attribut value änderst Du jeweils von "a" nch "c".

    Grüsse
    Uwe

    ich möchte ein Formular erstellen mit einem input type="text"  (a) und drei input type="checkbox" (b, c und d).
    Falls nur etwas in dem input type="text" eingetragen wird, soll ein Wert a als query "wertauswahl"  submitted werden. Falls input type="text" Inhalt hat und checkbox b aktiviert wird a+b als "wertauswahl" übergeben. Bei text und checkbox b und c der wert a+b+c, usw.

    Vor der Übergabe soll der zusammengestelle Wert noch noch einen Zusatz bekommen (klammern). Das sieht dann so aus wertauswahl=" @(a+c+d)"

    Wer kann in diesem Fall helfen ? Gut wäre es in asp, javascript is aber auch ok !

    Vielen, vielen Dank im voraus
    Holger

    1. Hallo Uwe,
      erstmal vielen Dank für die Antwort.

      Dim wertauswahl, varvalue

      wertauswahl = request.form("a")
      for each varvalue in request.form("checkbox")
      wertauswahl = wertauswahl & varvalue
      next

      if wertauswahl <> "" then
      wertauswahl = "@(" & wertauswahl & ")"
      else
      'nichts eingegeben und gecheckt
      deincode
      end if

      Der gesendete Code is mir klar, aber wie binde ich den am besten ins Formular ein. D.h. so das letzendlich text query und den ermittelten wert "wertauswahl" (per <input type="hidden" name="url") an <form name="suchen" method="get" action="http://server/rand_ger_randtech.asp" target="mainFrame" > übergebe.

      Wäre sehr nett wenn Du oder (jemand anders) mir da weiterhelfen könntest.
      Danke und Gruss
      Holger

      1. Hallo Holger,

        Der gesendete Code is mir klar, aber wie binde ich den am besten ins Formular ein. D.h. so das letzendlich text query und den ermittelten wert "wertauswahl" (per <input type="hidden" name="url") an <form name="suchen" method="get" action="http://server/rand_ger_randtech.asp" target="mainFrame" > übergebe.

        Es soll also vor dem Submit schon die Variable wertauswahl fertig berechnet werden? Imho geht das nur mit javascript, etwa so:

        function make_wertauswahl()
        {
        var wertauswahl = document.suchen.a.value;
        for (var i=0; i < document.suchen.blabla.length; i++)
         {wertauswahl = wertauswahl+document.suchen.blabla[i].value;}
        wertauswahl = "(@" + wertauswahl + ")";
        if (wertauswahl != "")
         {
          document.suchen.url.value = wertauswahl;
          document.suchen.submit();
         }
        else
         {alert("nichts ausgewählt");return false;}
        }

        <form name="suchen" ....>
        <input type="text name="a">
        <input type="checkbox" name="blabla" value="b">
        <input type="checkbox" name="blabla" value="c">
        <input type="checkbox" name="blabla" value="d">
        <input type="button" value="Go" onclick="make_wertauswahl();">
        <input type="hidden" name="url" value="">
        </form>

        oder so (ich habs aus dem Kopf und auf die Schnelle geschrieben näheres in SELFHTML->Javascript). Ob das mit dem Namensattribut "url" für das hidden-Element gut geht, könnte zweifelhaft sein.

        Grüsse
        Uwe

        1. it works - hab vielen Dank
          Holger Ahlrichs

          Hallo Holger,

          Der gesendete Code is mir klar, aber wie binde ich den am besten ins Formular ein. D.h. so das letzendlich text query und den ermittelten wert "wertauswahl" (per <input type="hidden" name="url") an <form name="suchen" method="get" action="http://server/rand_ger_randtech.asp" target="mainFrame" > übergebe.

          Es soll also vor dem Submit schon die Variable wertauswahl fertig berechnet werden? Imho geht das nur mit javascript, etwa so:

          function make_wertauswahl()
          {
          var wertauswahl = document.suchen.a.value;
          for (var i=0; i < document.suchen.blabla.length; i++)
          {wertauswahl = wertauswahl+document.suchen.blabla[i].value;}
          wertauswahl = "(@" + wertauswahl + ")";
          if (wertauswahl != "")
          {
            document.suchen.url.value = wertauswahl;
            document.suchen.submit();
          }
          else
          {alert("nichts ausgewählt");return false;}
          }

          <form name="suchen" ....>
          <input type="text name="a">
          <input type="checkbox" name="blabla" value="b">
          <input type="checkbox" name="blabla" value="c">
          <input type="checkbox" name="blabla" value="d">
          <input type="button" value="Go" onclick="make_wertauswahl();">
          <input type="hidden" name="url" value="">
          </form>

          oder so (ich habs aus dem Kopf und auf die Schnelle geschrieben näheres in SELFHTML->Javascript). Ob das mit dem Namensattribut "url" für das hidden-Element gut geht, könnte zweifelhaft sein.

          Grüsse
          Uwe

      2. Hallo Holger,

        ich verstehe allerdings nicht, warum Du die serverseitige Lösung nicht vorziehst. Serverseitig ist der Rechenaufwand lächerlich klein, und Du bist [<b>]unabhängig[</b>] von irgenwelchen Client-Einstellungen.

        Grüsse
        Uwe