Ajax 요청을하려고하는데 보내려는 매개 변수가 전송되지 않았습니다. 그래서 나는이 제대로 값을 검색 할 것 Ajax가 올바른 매개 변수를 전송하지 않습니다.
<script>
function showUser(str) {
if (str=="") {
document.getElementById("txtHint").innerHTML="";
return;
}
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
}
document.write(str);
xmlhttp.open("GET","getuser.php?q="+str,true);
xmlhttp.send();
}
</script>
<form>
<select name="users" onchange="showUser(this.value)">
<option value="">Select a person:</option>
<option value="1">John Smith</option>
<option value="2">Lois Griffin</option>
<option value="3">Joseph Swanson</option>
<option value="4">Glenn Quagmire</option>
</select>
</form>
user.php 있습니다.
Joseph Swanson
을 선택하면
3
이 표시됩니다. 내가
getUser.php
<?php
$q = intval($_GET['q']);
var_dump($q);
?>
에 갈 때 나는 int 0
때마다 얻을. 무엇이 문제입니까?
시도해보십시오'$ q = $ _GET [ 'q']; 에코 $ q를, 당신의 XMLHttpRequest의와 결합하면 그냥 잘 작동합니다' –
는 문제는 이렇게 정의되는 것을 (단지'getUser.php')를 일반적으로 페이지에 액세스하려고하는 것입니다. http://codepad.viper-7.com/a7eRcw – Ghost