hal: jquery - auf submit in div verlinken

Beitrag lesen

Ok, habe nun mal schnell ein Beispiel geschrieben:

Zuerst einmal die HTML Datei:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">  
<head>  
<script type="text/javascript" src="jquery.js"></script>  
  
<script type="text/javascript">  
  
    $(document).ready(function(){                                 //Ausgeführte Funktion nach dem Laden der Seite  
        $('#suchen').click(function() {                           //Clickevent wird dem Button mit der id 'suchen' zugeteilt  
	    var suche=$("#begriff").val();                        //Wert aus dem Textfeld mit der id 'suchen' wird ausgelesen  
	    $.post("test.php", { search:suche }, function(data) { //test.php wird im Hintergrund aufgerufen und 'suche' wird übergeben  
	        $('#inhalt').html(data);                          //das Ergebnis von test.php wird zurückgegeben und in das DIV mit der id  
	    });                                                   //'inhalt' geschrieben  
        });  
    });  
  
</script>  
</head>  
<body>  
  
<input type="text" id="begriff" />  
<input type="button" value="Suchen!" id="suchen" />  
<div id="inhalt" style="margin-top:30px; width:200px; border:1px solid #ff0000;"></div>  
  
</body></html>

und die dazugehörige PHP Datei:

  
<?  
for($a=0;$a<10;$a++)  //Testinhalt erzeugen  
	$ergebnis.='<div style="border:1px solid;">Suchanfrage: '.$_POST["search"].' Zeile: #'.$a.'</div>';  
  
echo $ergebnis;       //Inhalt zurückgeben  
?>

Der von mir erzeugte Testinhalt kann natürlich alles mögliche sein. Das Script läufts soweit bei mir sehr gut. Von der HTML Datei wird 'suche' an das PHP Script übergeben und ist in diesem dann als Variable $_POST["search"] verfügbar. Damit kann man dann alles Mögliche anstellen. Das Ergebnis der PHP Seite wird in einem String zusammengefasst und mit echo $ergebnis zurück an die HTML Datei gesendet (ich schrieb vorhin etwas von return $ergebnis, dies war aber falsch!). Dort wiederrum wird das Ergebnis in das DIV mit der id 'inhalt' eingetragen - Fertig. Kein iFrame, kein Neuladen, nichts. Der Anwender bemerkt diese Anfrage nicht wirklich. Ich hoffe das hilft dir ein bischen weiter.

Grüße, Stefan