我正在处理一个表单,我在下拉 onchange 上发送 ajax 调用,一切都很好,但我唯一不明白的是,当我在响应 div 中显示 html(response) 时,所有 tr 和 td 都消失了试图找出原因,但一切都是徒劳的。
id 为 txtHint 的 div 是响应 div,我想<tr>....</tr>
用<tr>....</tr>
ajax 响应替换返回我
<div id='txtHint'>
<?php while($rows = mysql_fetch_array($select_recrds)){?>
<tr>
<td field="itemid" width="80" sortable="true"><a href=""><?php echo $rows['ee'];?></a></td>
<td field="productid" width="100" sortable="true"><?php echo $rows['ss'];?></td>
<td field="listprice" width="80" align="right" sortable="true"><?php echo $rows['cc'];?></td>
<td field="unitcost" width="80" align="right" sortable="true"><?php echo $rows['bb'];?></td>
<td field="status" width="160" align="center"><?php echo $rows['xx'];?></td>
</tr>
<?php }?>
</div>
这是ajax响应
while($row = mysql_fetch_array($result))
{
echo '<tr>';
echo '<td field="itemid" width="80" sortable="true"><a href="">'.$row["ee"].'</a></td>';
echo '<td field="productid" width="100" sortable="true">'.$row["ss"].'</td>';
echo '<td field="listprice" width="80" align="right" sortable="true">'.$row["cc"].'</td>';
echo '<td field="unitcost" width="80" align="right" sortable="true">'.$row["bb"].'</td>';
echo '<td field="status" width="160" align="center">'.$row["xx"].'</td>';
echo '</tr>';
}
两者看起来都一样,但唯一的区别是它包含的记录,所以不用担心。
当我提醒响应 html 时,它很好,如下图所示:
但我收到的响应 div 是
<div id="txtHint"><a href="">12</a>Bolt-Ons2013-09-25 14:28:520000-00-00 00:00:00in progress<a href="">4</a>Bolt-Ons2013-09-25 14:28:470000-00-00 00:00:00in progress</div>
为什么 tr 和 tds 消失了,我该如何解决这个问题?
下面是我的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)
{
alert(xmlhttp.responseText);
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","filter_data.php?q="+str,true);
xmlhttp.send();
}
</script>