重複の可能性:
スクリプトが Ajax の戻り値で機能しない
一部のデータを取得するために ajax を使用しています。「このユーザーのアイテムを表示する」リンクがあります。それをクリックすると、パラメーター「userid」で関数「callfunc」が呼び出されます。この ajax 関数は getdetails.php に移動し、その対応するユーザーの詳細を取得します。
<tr><td colspan="6" align="right"><a href="javascript:callfunc(<?= $row5[user_id]; ?>)" style="font-size:10px;">Show items of this user</a></td></tr>
<script type="text/javascript">
function callfunc(str)
{
//alert(str);
if (str.length==0)
{
document.getElementById("result").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("result").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","getdetails.php?cid="+str,true);
xmlhttp.send();
}
getdetails.php
<?php
require 'include/connect.php';
$cid=$_GET['cid'];
$sql="select * from table where status='Active' and user_id=$cid";
$res=mysql_query($sql);
$tot=mysql_num_rows($res);
if($tot>0){
while($row=mysql_fetch_array($res))
{
echo '<tr class="detail9txt" height="30">
<td width="2%"><input type="checkbox" name="item" id="item" value="'.$row[item_id].'"></td>
<td align="center" width="12%" style="vertical-align:baseline;">
<a href="detail.php?item_id='.$row[item_id].'" id="link3">'.$row['title'].'</a>
</td>
<td align="center" width="17%" style="vertical-align:baseline;">
'.substr($row['des'], 0, 20).'
</td></tr>';
}
?>
このコードは、mozilla、chrome、opera では正常に動作しますが、IE では動作しません。リンク「このユーザーのアイテムを表示」をクリックしても、IE では何も起こりません。何か考えはありますか?