php ajax中数据更新期间的问题

时间:2010-08-08 15:51:28

标签: php ajax

AJAX -

xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("lblvoteup").innerHTML=xmlhttp.responseText;
//document.getElementById("lblvotedown").innerHTML=xmlhttp.responseText;
}
}

HTML -

<tr>                    
                <td ><img src="images/up.jpeg" style="border:none;" title="Like" 
                onclick="doVote('<?php echo $q_id; ?>','<?php echo $_SESSION['UserId']; ?>','up', '<?php echo $q_up; ?>')"></td>
                <td ><label id="lblvoteup"><?php echo $q_up;?></label></td>
                <td style="border-left:1px solid whitesmoke;"><img src="images/down.jpeg"  style="border:none;" title="Dislike" 
                onclick="doVote('<?php echo $q_id; ?>','<?php echo $_SESSION['UserId']; ?>','down', '<?php echo $q_down; ?>')"></td>
                <td ><label id="lblvotedown"><?php echo $q_down; ?></label></td>
            </tr>

问题是我不想写另一个ajax函数来更新lblvotedown。如何检查在ajax函数中点击了哪个图像?

1 个答案:

答案 0 :(得分:0)

很简单,请执行以下过程

1)让响应文本包含以下类型的数据“向下 - 10”或“向上 - 11”(假设您当前获得更新的投票数或向上数)

2)拆分使用javascript代码检索的数据

var returns=xmlhttp.responseText.split("--");

3)在ajax函数中使用以下内容

xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
  var returns=xmlhttp.responseText.split("--");
  if(returns[0]=="up") 
  document.getElementById("lblvoteup").innerHTML=returns[1];
  else
  document.getElementById("lblvotedown").innerHTML=returns[1];
}
}

希望有用