2012-08-08 1 views
2

나는 AJAX 검색을 만들고 약간의 어려움을 겪고 있습니다.AJAX 검색 결과가 표시되지 않습니다.

<script type="text/javascript">// 
function prodSearch(request) { 

    if (request == "") { 
     document.getElementById("searchResults").innerHtml=""; 
     return; 
    } 

    if (window.XMLHttpRequest) { 
     xmlhttp = new XMLHttpRequest(); 
    } 

    xmlhttp.onreadystatechange = function() { 
     if(xmlhttp.readystate==4 && xmlhttp.status==200) { 
      document.getElementById("searchResults").innerHTML=xmlhttp.responseText; 
     } 
    } 
xmlhttp.open("GET","/ps.php?country="+request,true); 
xmlhttp.send(); 
} 
</script> 
<form> 
<select name="countries" onchange="prodSearch(this.value)"> 
<option>Select a country:</option> ... 
<div id="searchResults"> 
</div> 

그리고 여기 내 PHP는 다음과 같습니다 : 여기 내 JS 및 폼의 데이터베이스에

<?php 
/* Get data from form */ 
$country = $_GET["country"]; 

/* Build query */ 
$result = "SELECT .... "; 

while($row = $modx->db->getRow($result)) { 
    echo "<pre>"; 
    print_r($row); 
    echo "</pre>"; 
} 

?> 

내 쿼리가 완벽하게 작동을하고, 나는 ps.php 결과를 반환 방화범 콘솔에서 볼 수 있습니다. 그러나 실제로 결과를 searchResults div으로 채우지 못하는 것 같습니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

if(xmlhttp.readyState==4 && xmlhttp.status==200) { 
+1

할 수 있습니다 '경고 (xmlhttp.responseText)': – Tchoupi

+0

'document.getElementById ... responseText' 앞에'alert (xmlhttp.responseText)'를 놓았고 경고를받지 못했습니다. – Vecta

+1

'xmlhttp.onreadystatechange'는 실제로 호출 되었습니까? 이 줄 앞에'xmlhttp.readystate'를 경고 할 수 있습니까?'(xmlhttp.readystate == 4 && xmlhttp.status == 200) {'? – Tchoupi

답변

3

readyState

는 자본 S.이에 대한 if 조건 변경이? 기대 한 결과를 경고합니까?
+0

Oof ... 그게 다야. 당신의 도움을 주셔서 감사합니다! – Vecta

+0

@ 베타 당신은 환영합니다. :) 그것을 보는 데 어느 정도 시간이 걸렸습니다. – Tchoupi