onmouseover与ajax无法正常工作

时间:2014-01-22 09:43:19

标签: javascript jquery ajax yii

我有一个锚标记,其中我有mouseovermouseout功能。

CSS:

.pt   #showdata
{
    z-index:10;
    position:absolute;
    left:350px;
    top:150px;
    display:none;
    width:400px;
    height:300px;
    border:1px solid black;
}

代码:

<div class="title">
  rid:<a 
    onmouseover="showCustomer(' + item.pid + ',' + item.rmid + ')" 
    onmouseout="hide()">' + item.rid + '</a></div><div id="showdata">
</div>

function hide() {
    document.getElementsById("showdata").style.display = "none";
}

当我将鼠标悬停在' + item.rid + '上时,它应该显示带有db内容的showdata div,但是它不会发生。

使用inspect元素showcustomer有值,但它不显示style.display =“block”

同时多个参数的查询字符串是否正确?

"<?php echo Yii::app()->request->baseUrl;?        >/index.php/controller/action/id/"+s1+"&mid/"+s2**

function showCustomer(s1,s2) {
    document.getElementsById("showdata").style.display = "block";
    var xmlhttp;    

    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("showdata").innerHTML=xmlhttp.responseText;
            }
       }
       xmlhttp.open("GET","<?php echo Yii::app()->request->baseUrl;?         >/index.php/controller/action/id/"+s1+"&mid/"+s2,true);
 xmlhttp.send();
    }

然后来自db的数据不是由ajax提取的......这不起作用....

  xmlhttp.open("GET","<?php echo Yii::app()->request->baseUrl;? >/index.php/controller/action/id/"+s1+"&mid/"+s2,true);

有人能告诉我代码中有什么问题吗?

2 个答案:

答案 0 :(得分:0)

你的代码中有一个拼写错误:

function showCustomer(s1,s2) {
    document.getElementsById("showdata").style.display = "block";

应该是

function showCustomer(s1,s2) {
    document.getElementById("showdata").style.display = "block";

(复数 - 单数.getElementById总是单数,因为id是唯一的。)

编辑:隐藏功能中出现同样的错误

function hide() {
    document.getElementById("showdata").style.display = "none";
}

答案 1 :(得分:0)

提供的工作网址必须正确必须使用“/” 而不是“&amp;”

 xmlhttp.open("GET","<?php echo Yii::app()->request->baseUrl;? >/index.php/controller/action/id/"+s1+"/mid/"+s2,true)