JS+AJAX+Verständnisproblem
Rainer
- javascript
Hallo,
habe folgendes geschrieben bzw. aus einer Zeitschrift übernommen und angepasst:
#Datei ajax.php#
<html>
<head>
<script type="text/javascript" src="includes/ajax.js"></script>
<script type="text/javascript">
function loadText(url){
var myAjax=new Ajax()
myAjax.url=url;
myAjax.onSuccess=successHandler;
myAjax.doRequest();
}
function errorHandler(msg){
document.getElementById("text").innerHTML=msg;
}
function successHandler(txt,xml){
document.getElementById("text").innerHTML=txt;
}
</script>
</head>
<body>
<a href="javascript:loadText('ajax_re.php?UK=3');">Laden</a>
<select name="UserKat" onChange="javascript:loadText('ajax_re.php?UK=this.value');">
<option>[ Bitte auswählen ]</option>
<option value="1">Ohne</option>
<option value="2">Handball</option>
<option value="3">Fussball</option>
</select>
<table><tbody><tr><td id="text">Laden..</td></tr></tbody></table>
</body>
</html>
#Datei ajax_re.php
<?php
include("includes/connect.php");
$sql = "SELECT Name FROM User WHERE UserKat = '".$_GET["UK"]."' ORDER BY Name";
$res = mysql_query($sql);
$n = "";
while($z=mysql_fetch_row($res)):
$n.="$z[0]<br />";
endwhile;
echo"$n";
?>
Bei einem Klick auf den <a href... geht es. Also ist der Fehler im Aufruf mit onChange. Schreibe ich da ?UK=3 geht es. Wird das this.value icht übergeben oder denke ich da völlig quer?
Gruß Rainer
Hi,
<select name="UserKat" onChange="javascript:loadText('ajax_re.php?UK=this.value');">
Das Label javascript: ist an dieser Stelle bloedsinnig.
Wird das this.value icht übergeben oder denke ich da völlig quer?
Natuerlich nicht - du hast dort lediglich ein Textliteral notiert.
Wenn du den Wert an ein andere Textliteral *anhaengen* willst - dann benutze denn Operator zur Stringverkettung.
MfG ChrisB
Hallo ChrisB,
danke. '+ this.value ist es natürlich.
Gruß Rainer