0

私は最初に私のプロジェクトで2つの機能を持っています:

function send(method,url,data,content_id,show_wait,small,aaa)
{
    if(content_id!='multipart'&&show_wait)
    {
        if(typeof(small) === 'undefined'){
            showwait(content_id);
        }else{
            smallshowwait(content_id);
        }
    }
    var XMLHttp=new XMLHttpRequest(); // is XMLHttpRequest httprequest class
    XMLHttp.onreadystatechange = function()
    {
        if(XMLHttp.readyState == 4 && XMLHttp.status == 200)
        {
            //alert(XMLHttp.responseText);
            if(content_id!='multipart')
            {
                MyResponse = XMLHttp.responseText.split('#$$#');
                if(typeof(aaa) === 'undefined'){
                    document.getElementById(content_id).style.display="none";
                    $(document.getElementById(content_id)).fadeIn("slow");
                }
            }
        }
    }
}

2番目の関数は:

function aya(method,url,data,divid,isresponse){
    $(document).ready(function(){
        send(method,url,data,divid,isresponse,'small','aaa');
        $(document).ready(function(){
            alert('test');
            addActiveClass('inbox');
            send(method,'messages/showmessage.php',data,'messagecontent',true);
        });
    });
}

2番目の関数は正しく機能します。しかし、削除したいときにalert('test');エラーが発生します。Firebugエラーショーで:

document.getElementById(...)がnull
ですアラートを削除する方法はありますか?

4

1 に答える 1

1

あなたはからあなたのコードを変換することができます:

alert('test');
addActiveClass('inbox');
send(method,'messages/showmessage.php',data,'messagecontent',true);

に :

setTimeout(function(){
        addActiveClass('inbox');
    },200);
    setTimeout(function(){
        send('post','messages/showmessage.php',data,'messagecontent',true);
    },1000);
于 2013-02-26T07:57:14.387 に答える