Kane_Kowalski
Grünschnabel
Hi,
gibt es eine Möglichkeit die StateChange Methode, mit derren Hilfe i.d.R. die Serverantworten in die HTML Elemente geschrieben werden, so zu verändern, dass als Übergabeparameter der gewünschte Elementname eingetragen wird und bei der Verarbeitung auch genau dieses Element verändert wird?
Hatte hier etwas ausprobiert, gingaber leider nach hinten los
Kleine Erläuterung:
Die beiden Methoden ShowCD und ShowCD2 sind einfache funktionen, die Requests anfordern. Sobald "onreadystatechange" erreicht ist, wird die Methode StateChange aufgerufen. Als Übergabeparameter ist das entsprechende Div Element angegeben, welchen dann mit der Serverantwort gefüllt werden soll.
Hier noch meine beiden Testdateien:
1. index.html
2. database.php
gibt es eine Möglichkeit die StateChange Methode, mit derren Hilfe i.d.R. die Serverantworten in die HTML Elemente geschrieben werden, so zu verändern, dass als Übergabeparameter der gewünschte Elementname eingetragen wird und bei der Verarbeitung auch genau dieses Element verändert wird?
Hatte hier etwas ausprobiert, gingaber leider nach hinten los
Code:
...
function stateChanged(div_block) {
if (xmlHttp.readyState==4){
document.getElementById(div_block).innerHTML=xmlHttp.responseText;
}
else{alert("Fehler -"+div_block+" ->"+xmlHttp.readyState);}
}
function showCD(str)
{
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
{
alert ("Your browser does not support AJAX!");
return;
}
var url="database.php";
xmlHttp.onreadystatechange=stateChanged("txtHint");
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}
function showCD2(str)
{
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
{
alert ("Your browser does not support AJAX!");
return;
}
var url="database.php";
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
xmlHttp.onreadystatechange=stateChanged("txtHint2");
...
Kleine Erläuterung:
Die beiden Methoden ShowCD und ShowCD2 sind einfache funktionen, die Requests anfordern. Sobald "onreadystatechange" erreicht ist, wird die Methode StateChange aufgerufen. Als Übergabeparameter ist das entsprechende Div Element angegeben, welchen dann mit der Serverantwort gefüllt werden soll.
Hier noch meine beiden Testdateien:
1. index.html
Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script language="javaScript" type="text/javascript">
var xmlHttp
function GetXmlHttpObject(){
var xmlHttp=null;
try{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
// Internet Explorer
try{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
function stateChanged2() {
if (xmlHttp.readyState==4)
{
document.getElementById("txtHint").innerHTML=xmlHttp.responseText;
}
else{alert("Fehler ->"+xmlHttp.readyState);}
}
function stateChanged(div_block) {
if (xmlHttp.readyState==4){
document.getElementById(div_block).innerHTML=xmlHttp.responseText;
}
else{alert("Fehler -"+div_block+" ->"+xmlHttp.readyState);}
}
function showCD(str)
{
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
{
alert ("Your browser does not support AJAX!");
return;
}
var url="database.php";
xmlHttp.onreadystatechange=stateChanged("txtHint");
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}
function showCD2(str)
{
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
{
alert ("Your browser does not support AJAX!");
return;
}
var url="database.php";
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
xmlHttp.onreadystatechange=stateChanged("txtHint2");
}
function showCD3(str)
{
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
{
alert ("Your browser does not support AJAX!");
return;
}
var url="database.php";
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
xmlHttp.onreadystatechange=stateChanged2;
}
</script>
</head>
<body>
Nr1<br>
<form>
Select a CD:
<select name="cds" onchange="showCD(this.value)">
<option value="">None</option>
<option value="Chingy">Chingy</option>
<option value="Powdy">Powdy</option>
</select>
</form>
<br>El Diffo:
<div id="txtHint"><b>CD info will be listed here.</b></div>
Nr1<br>
<form>
Select a CD:
<select name="cds" onchange="showCD2(this.value)">
<option value="">None</option>
<option value="Chingy">Chingy</option>
<option value="Powdy">Powdy</option>
</select>
</form>
<br>El Diffo:
<div id="txtHint2"><b>CD info will be listed here.</b></div>
<br>
<input type="button" value="klick too see 1" onclick="showCD(this.value)"/><br>
<input type="button" value="klick too see 2" onclick="showCD2(this.value)"/><br>
<input type="button" value="klick too see 3" onclick="showCD3()"/>
</body>
</html>
2. database.php
PHP:
<?
echo "<b>show it works</b> ";
?>