我在 PHP 页面中使用 AJAX 从 MySQL 数据库中调用联系人列表。数据被正确调用,但是当我在浏览器中调用 PHP 页面时,我可以看到联系人列表(来自 DB 的数据)显示在元数据之前的页面顶部。该列表应该显示在定义的 DIV 中,但由于某种原因它不是。下面是我的代码:
阿贾克斯代码:
function getUserList(){
var ajaxDisplay = myform.getElementById('displayList'); // HTML Div where data should be displayed
try{ //for Firefox, Chrome, Opera, Safari, IE7+
var activeX = new XMLHttpRequest(); //initializing object
}catch(e){
try{// for IE5 , IE6
var activeX = new ActiveXObject(Msxml2.XMLHTTP);
}
catch(e){
alert("Dude your browser is in Jurassic era!");
}
}
activeX.readystatechange = function{
if(activeX.readyState == 4){
var queryResult = activeX.responseText;
if(!queryResult){
ajaxDisplay.innerHTML = 'Error in populating list';
}else{
ajaxDisplay.innerHTML = queryResult;
}
}
}
activeX.open("GET", "?action=contactsandgroups", true);
activeX.send(null);
}
PHP/HTML 代码:
<div class="contacts_list_data_contacts" id="displayList"></div>
MySQL 功能:
while($row=mysql_fetch_assoc($res_info)){
print '<div class="contacts_headings_01">
<div class="contacts_checkbox_01"><input name="contact_id[]" id="contact_id" type="checkbox" value="'.$row['contact_id'].'" style="margin-top:0px ; margin-left:-3px;" /></div>
<div class="contacts_firstname_01_contacts">'.$row['firstname'].'</div>
<div class="contacts_firstname_01">'.$row['lastname'].'</div>
<div class="contacts_firstname_01">'.$row['company'].'</div>
</div>';
}
当我查看页面源时,它显示它在页面顶部打印数据。这发生在 Firefox、Chrome 和 Internet Explorer 中。