ajax加载图片

时间:2009-11-05 17:50:30

标签: ajax

我有一个页面检查表单以进行验证,主要检查是否电子邮件或用户名已在数据库中。我有这个工作正常,但我无法弄清楚如何添加加载图像...当用户在检查时更改用户名或电子邮件。

Yy检查用户名的功能如下,与检查电子邮件相似

function check_username(username)
{
var httpRequest;
make_request()
function stateck() 
    {

    if(httpxml.readyState==4)

        { 
        if (httpxml.responseText.indexOf ("Username Ok") >= 0)
        {
            document.getElementById("username").style.backgroundColor = "green";
            document.getElementById("username").style.color = "white";
            document.getElementById("username_div").style.display = 'none';
            usernameok = true;

        }

         else 
        {
            document.getElementById("username").style.backgroundColor = "red";
            document.getElementById("username_div").style.visibility = 'visible';
            document.getElementById("username_div").innerHTML=httpxml.responseText;
            usernameok = false;

        }
        checkCanSubmit();           
        }


    }

httpxml.onreadystatechange=stateck;
user_url="check_username.php?username=" + username.value;
httpxml.open("GET",user_url,true);
httpxml.send(null);
}

我已经尝试过jQuery库,我更喜欢这种方式。

1 个答案:

答案 0 :(得分:1)

ajaxload.info确实运行良好,但您不需要打扰div和背景图像。只需使用document.createElement创建一个<img>,然后设置图像的src,然后将其添加到您的文档中:

var img = document.createElement('img');
img.src = '&lt;the URL of your loading image>';
function stateck() {
    ...

现在,您可以将新创建​​的img插入到文档中,然后在stateck()中将其删除。