Moin,
ich bin gerade auf ein Skript-Schnipsel gestoßen, das einen Button per AJAX generiert. Dieser reagiert jedoch erst auf einen 2. Mausklick (FF, IE). Kann mir jemand erklären, warum?
Danke im Voraus
ich bin gerade auf ein Skript-Schnipsel gestoßen, das einen Button per AJAX generiert. Dieser reagiert jedoch erst auf einen 2. Mausklick (FF, IE). Kann mir jemand erklären, warum?
Code:
<?php
if(isset($_GET['param'])) {
echo "<button type=\"button\" onClick=\"alert('gedrückt');\">". $_GET['param'] ."</button><br />\n";
} else {
?>
<html>
<head>
<title>Ajax-Test</title>
<script type="text/javascript">
var http_request = false;
function ajaxCall(param){
http_request = false;
if (window.XMLHttpRequest) { // Mozilla, Safari,...
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {
http_request.overrideMimeType('text/xml');
}
} else if (window.ActiveXObject) { // IE
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!http_request) {
alert('Ende :( Kann keine XMLHTTP-Instanz erzeugen');
return false;
}
http_request.onreadystatechange = ajaxCallback;
http_request.open('GET', 'ajaxtest.php?param='+param, true);
http_request.send(null);
}
function ajaxCallback() {
if (http_request.readyState == 4) {
var answer = http_request.responseText;
document.getElementById("filter_test_results").innerHTML = answer;
}
}
</script>
</head>
<body>
<h2>Ajax-Test</h2>
<table>
<tr>
<td>was eingeben</td>
<td>
<input id="input_text" type="text" name="input_text" size="30" maxlength="40" onKeyUp="ajaxCall(this.value);" onChange="ajaxCall(this.value);" />
</td>
</tr>
</table>
<div id="filter_test_results">
hier kommt gleich was
</div>
</body>
</html>
<?php
}
?>
Danke im Voraus