asynchrone Server Request+POST

Zack

cookies vader
Guten Tag,
ich möcht ein Formular durch einen asyncronen Server Request verarbeiten. Dies möchte ich mit der Methode post durchführen. Also ist folgendes entstanden:
Javascript:
var req = null;
var READY_STATE_COMPLETE = 4;
var READY_STATE_LOADING = 1;
var READY_STATE_LOADED = 2;
var READY_STATE_UNINITIALIZED = 0;
var READY_STATE_INTERACTIVE = 3;

function initXMLHTTPRequest()
{
	var xreq = null;
	if( window.XMLHttpRequest )
		xreq = new XMLHttpRequest();
	else if( window.ActiveXObject )
		xreq = new ActiveXObject( "Microsoft.XMLHTTP" );
	return xreq;
}

function displayText()
{
	if( req.readyState == READY_STATE_COMPLETE )
	{
		if( req.status == 200 )
		{
			whereToShow = document.getElementById("content");
			whereToShow.innerHTML = req.responseText;
		}
	}
}

function sendRequest_post( param )
{
	req = initXMLHTTPRequest();
	if( req == null )
	{
		alert( "Something wrong!" );
		return;
	}
	var url = "switch.php?site=" + param;
	alert( url );
	req.open( 'POST', url, true );
	req.onreadystatechange = displayText;
	req.send( null );
}

HTML:
<form action="javascript:sendRequest_post('artikel');" method="post">
	<input type="text" name="bla" />
	<input type="submit" name="test" />
</form>

PHP:
<?php
	var_dump($_POST);
?>
Das witzige ist: der Javascript wird richtig ausgeführt, aber die POST variable nicht übergeben.

Kann mir jemand helfen?

mfg Ra7or
 
Vielen Dank, sorry das ich nicht eher antworten konnte. Leider wolte mein Windos mal wieder nicht ;).

Mein Problem ist das ich das angegebene Formular nicht mit Javascript auslesen kann. Es wurde bereits mit AJAX durch einen asyncronen Request erzeugt. Für JavaScript exsistiert das Form also nicht. D.h.: ich kann nicht mit document.getElementById einfach die Inputfelder auslesen da diese eigentlich nicht exsistieren (zur Zeit der Seitenerstellung).

Oder geht das doch? Wenn ja, wie?
 
Ja habe ich. Funktioniert leider nicht. Nur wenn ich die Datei dirket aufrufe dann kann ich mit getElementById das Feld ansprechen.

Das Formular wird durch einen asyncronen Request in das inline Element <div id="content"></div> per innerHTML aus einer testdatei erzeugt.

Wenn ich jetzt versuche die Felder per Javascript (getElementById) anzusprechen, dann bekomm ich jedesmal ein leeres Resultat. Rufe ich die Datei jedoch direkt auf dann arbietet der selbe Javascript.

Die Javascriptanweisung steht in der eingelesenen Datei.
 
Ist nicht mehr nötig. Das Problem lag in meiner Logik, Ich hab einfach Javascript in die Datein mit eingebaut. Was totaler Schwachsinn ist und logischerweise nicht geht. Als externe Datei geht alles...

Thx4Help
 

Neue Beiträge

Zurück