willi: datenübergabe aus popup-fenster an php-formular

hallo,
vielleicht kann mir jemand helfen.
ich  hab ein formular in php von dem aus ich ein popup-fenster öffne mit folgender funktion

var tbs;
function fenster () {
top.tbs = window.open("/PFADANGABE/tbs.php","tbs","dependent=yes,width=310,height=160,screenX=350,screenY=290,titlebar=yes,scrollbars=yes");
}

im popup-fenster öffne ich ein php-script, das eine auswahlliste enthält (aus der datenbank selektiert)

nun möchte ich aus der liste einen oder auch mehrere einträge auswählen können und diese mit klick auf einen button in das hauptfenster übernehmen, ohne dass das hauptfenster neu geladen wird.
hier ein auszug aus dem script des popup-fensters
<input type="button" value="Textbaustein einfügen" onclick="javascript:opener.form[0].Text.setText('this.form[0].Text.select()');
this.close()">

das funktioniert so überhaupt nicht. ich  hab nur keine ahnung von javascript.
für hilfe wäre ich dankbar.
gruß
willi

  1. Hi Willi,

    <input type="button" value="Textbaustein einfügen" onclick="javascript:opener.form[0].Text.setText('this.form[0].Text.select()');
    this.close()">

    Hier nimm mal bei onClick erstmal das javscript: raus. Ist unnötig.
    Danach würde ich einfach schreiben: onClick="opener.document.form[0]Text.value=document.form[0].Text.value"

    Probier das doch mal aus :)

    Viele Grüße
    Ben

    --
    Phantasie ist wichtiger als Wissen. - Albert Einstein
    1. hi ben,
      habs mal so eingegeben, funktioniert aber auch nicht, d.h. wenn ich auf den button klick tut sich gar nichts.
      viele grüße
      willi

      1. Hi Willi,

        kannst du das ganze mal hochladen oder so? Wie heißen denn die Eingabefelder usw.?
        Vielleicht musst du in meiner Version sogar nur noch die Namena anpassen...

        Viele Grüße
        Ben

        --
        Phantasie ist wichtiger als Wissen. - Albert Einstein
        1. hallo ben,
          mit hochladen und so is wohl nicht, hab keine möglichkeit. ich hoffe, den rahmen hier im forum nicht zu sprengen und werd dir die beiden doku hier auszugsweise einmal anzeigen:
          script1 (hauptdokument) script heißt /adressen/anschreiben/txt.php

          <html>
          <head>
          <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
          <title>Schreibauftrag</title>
          <script language="JavaScript">
          var tbs;
          function fenster () {
          top.tbs = window.open("/privat/anschreiben/tbs.php","tbs","dependent=yes,width=310,height=160,screenX=350,screenY=290,titlebar=yes,scrollbars=yes");
          }
          //-->
          </script>

          <A HREF="javascript:fenster()" style="text-decoration:none">
          <font face="helvetica,arial"><b> Text</b></a></font></td>
          <td colspan="2">
          <textarea name="Text" rows=5 cols=100 wrap=physical>$Text</textarea></td>

          <input type="reset" width="100" value="verwerfen"> <input type="submit" width="100" value="erstellen"></td>

          script2 (popup-fenster) script heißt /privat/anschreiben/tbs.php
          <html>
          <head>
          <title>Textbaustein-Menü</title>
          <script language="JavaScript">

          </script>
          <p>
          <body bgcolor="#EDEDED">
          <form name="tbs">
          <td><font face="helvetica,arial"><b>Text </b></font></td>
          <td colspan="2"><select name="Text" size=1>
          ";

          foreach($Text_array as $key=>$value) {
           $Text_array=explode("|",$value);
           $row[id]=$Text_array[0];
           $row[kuerzel]=$Text_array[1];
           $row[tbs]=$Text_array[2];

          if($Text != "" && $value == $Text) {
             echo "<option value="$value" selected>$row[kuerzel]";
            } else {
               echo "<option value="$value">$row[kuerzel]";

          }
          }

          <form>
          <tr>
          <td colspan="5" align="center">
          <input type="button" value="Textbaustein einfügen" onClick="opener.document.form[0].Text.value=document.form[0].Text.value">

          ich hoffe, du steigst noch durch, beide scripte komplette anzuzeigen hätte wohl doch den rahmen gesprengt,
          dank im voraus
          gruß willi

          1. Hallo Willi,

            jetzt ist mir klar, warum es nicht funktioniert :)

            Es muss so aussehen, würde ich sagen:

            <input type="button" value="Textbaustein einfügen" onClick="opener.document.forms[0].Text.value=document.tbs.Text.options[document.tbs.Text.selectedIndex].value">

            Hier muss ja der Value eines DropDown-Menüs übergeben werden und nicht der Inhalt eines normalen Textfeldes. Versuch es mal so :)

            Viele Grüße
            Ben

            --
            Phantasie ist wichtiger als Wissen. - Albert Einstein
            1. jetzt ist mir klar, warum es nicht funktioniert :)

              hi ben,
              es funzt, zwar noch nicht mit mehrfachauswahl, es wird immer nur eine auswahl übernommen, eine weitere überschreibt die vorherige. aber ich froh, dass jetzt erst mal eine auswahl möglich ist. suuuuper und besten dank für alles.
              gruß
              willi

              1. Hi Willi,

                schön, dass es zum Teil funktioniert. Wenn du eine Mehrfachauswahl möglich machen willst, dann würde ich eine kleine Funktion schreiben, die ungefähr so aussehen müsste:

                function uebernahme() {
                opener.document.forms[0].Text.value = opener.document.forms[0].Text.value + document.tbs.text.options[document.tbs.Text.selectedIndex].value;
                }

                Dann brauchste in deinen Button nur noch ein onClick="uebernahme();" zu setzen. :)

                Viele Grüße
                Ben

                --
                Phantasie ist wichtiger als Wissen. - Albert Einstein
                1. hi ben,
                  der sonntag ist gerettet!!!!!!!
                  suuuuper. funktioniert so wie ich mir das vorgestellt hab.
                  vielen dank für die hilfe und die geduld
                  war im übrigen mein erster ausflug in ein forum und bin erstaunt
                  über die hilfsbereitschaft
                  schönen sonntag noch
                  grüße
                  willi

                  1. Hi Willi,

                    der sonntag ist gerettet!!!!!!!
                    suuuuper. funktioniert so wie ich mir das vorgestellt hab.

                    Na das klingt doch super. Freut mich, dass nun alles zu deiner Zufriedenheit klappt. :)

                    vielen dank für die hilfe und die geduld
                    war im übrigen mein erster ausflug in ein forum und bin erstaunt
                    über die hilfsbereitschaft

                    Es freut mich, dass du einen so positiven Eindruck von diesem Forum bekommen hast. Auch
                    ich staune immer wieder über die Schnelligkeit der Antworten, sowie die (meist vorhandene)
                    Kompetenz.

                    Wenn du mal wieder eine Frage hast, melde dich einfach hier. :)

                    Viele Grüße
                    Ben

                    --
                    Phantasie ist wichtiger als Wissen. - Albert Einstein
                    1. hallo ben,
                      ich schon wieder, mir ist nämlich heute aufgefallen, dass ich zwar eine mehrfachauswahl treffen kann, also mehrere einträge markieren kann, jedoch nur der in der liste zuerste markierte eintrag übernommen wird. das ist mir gestern nicht aufgefallen. hab jetzt selbst schon in einem "schlauen" buch versucht, eine antwort auf meine frage zu bekommen, aber leider ohne erfolg. kannst du mir weiterhelfen?
                      noch eine zweite frage: gibt es überhaupt mit javascript die möglichkeit, einen eintag aus einer mehrfachauswahl, der mit der maus markiert wird, mit einem hinweistext zu versehen, so eine art sprechblase, was auch mit links möglich ist, also title="irgendwas"?
                      viele grüße
                      willi

  2. hier ein auszug aus dem script des popup-fensters
    <input type="button" value="Textbaustein einfügen" onclick="javascript:opener.form[0].Text.setText('this.form[0].Text.select()');
    this.close()">

    das funktioniert so überhaupt nicht. ich  hab nur keine ahnung von javascript.

    "das funktioniert nicht" ist keine Fehlerbeschreibung, http://glasgoogle.de  sagt  dir wie du vielleicht an eine Fehlerbeschreibung kommst, die etwa Aussagekräftiger ist.

    Darüberhinaus benutzt du Fantasiesyntax. Vielleicht hilft dir selfhtml weiter http://selfhtml.teamone.de/javascript/index.htm um Javascript richitg einzusetzten.
    (Tipp: der Abbschnitt über 'forms' Formulare ist für dich lesenswert)

    Struppi.