Archivlink: javarea.de Forum > JavaScript > Popup mit Datenübernahme
Vollständigen Link anzeigen: javarea.de Forum > JavaScript > Popup mit Datenübernahme

Pages: [1]

geschrieben von Maik20 am 28.06.2007 - 22:20
Hallo,

ich stehe vor folgendem Problem und hoffe auf eure Hilfe.

Ich möchte von einer Seite ein PopUp Fenster öffnen. Dieses PopUp-Fenster beinhaltet ein dynamisches Formular. (Je nach dem was der Nutzer in dem Formular auswählt, desto mehr oder weniger Eingabefelder hat er.) Beim Klick auf Speichern sollen alle Formularfelder im PopUp in zwei Formularfelder auf der Seite übertragen werden auf der das PopUp ursprünglich geöffnet wurde. Dazu sollen alle Formularfelder (auch hidden) im PopUp-Fenster (mit Ausnahme des Feldes TEST2) wie folgt aneinander gehängt werden:

NameFeld1=WertFeld1;NameFeld2=WertFeld2;....

und in das Feld DatenPopUp auf der ursprünglichen Seite übertragen werden. Das Feld TEST2 (im Pop-Up) soll in das Feld DatenPopUp2 übertragen werden. Dann soll das Pop-Up-Fenster geschlossen werden.

Ich hoffe ich habe die Situation klar dargestellt und Ihr könnt mir helfen.

Danke schon einmal im vorraus.

Ciao

Maik


geschrieben von René am 29.06.2007 - 09:17
Hallo Maik20,

deinen langen String, den du in das öffnende Fenster übergeben willst muss du dir selbst zusammen bauen.

HTML-Quelltext
1: 
2: 
3: 
4: 
5: 
var langer_string = '';

with (document.forms['dein_form_name_im_popup'])
	for (var i = 0; i < elements.length; i++)
		langer_string += elements[i].name + '=' + elements[i].value + ';';


Das Fenster aus dem das POPUP geöffnet wurde sprichst du mit:
HTML-Quelltext
1: 
opener.document.forms['dein_form_name'].elements['dein_eingabefeld_name'].value = 'langer_string';

an.

geschrieben von Maik20 am 29.06.2007 - 10:53
Danke,

sieht das dann so aus:

Im PopUp:
PHP-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 

<?
function datentransfer(dein_form_name_im_popup){

var 
langer_string '';

with (document.forms['dein_form_name_im_popup'])
    for (var 
0elements.lengthi++)
        
langer_string += elements[i].name '=' elements[i].value ';';

opener.document.forms['dein_form_name'].elements['dein_eingabefeld_name'].value 'langer_string';
window.close();
}
?>



Formular im PopUp:
PHP-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 

<?
<form action="popup.php" method="post">
<
input type="text" name="test">
<
input type="text" name="test1">
<
input type="button" name="Speichern" value="Speichern" onclick="datentransfer">
</
form>
?>



Habe ich das richtig komplettiert? Ist mein erster JavaCode :-)

geschrieben von René am 29.06.2007 - 11:05
HTML-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
function datentransfer()
{
	var langer_string = '';

	with (document.forms[' ??? '])
		for (var i = 0; i < elements.length; i++)
			langer_string += elements[i].name + '=' + elements[i].value + ';';

	opener.document.forms[' ??? '].elements[' ??? '].value = 'langer_string';
	window.close();
}


HTML-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
<form name=" ??? " action="javascript:void(0);" method="post">
	<input name="test1" type="text" size="15" value="">
	<input name="test2" type="text" size="15" value="">

	<input type="button" value="speichern" onclick="datentransfer();">
</form>


Powered by: JBB v.2.0.4 Copyright ©2000-2006, www.javarea.de.