for(k=1;k<=bjgs;k++){
    var id1=document.getElementById("hiddenTrainClassId"+(k-1)).innerHTML;
    alert(document.getElementById('_sendShortMessage_ck_'+k).id);//这个id存在
    alert(k);//k存在,且正确
    Ext.Ajax.request({
url:"gotoCheckTrainClassAttachIsAlreadyUpload.action",
params:{
pxbid:id1         
},
success:function(response){
         //Ext.Msg.alert("提示",response.responseText);
        if(response.responseText!=''){
var attachId_array=new Array();
attachId_array=response.responseText.split(':');
var attatchId=attachId_array[1];
if(attatchId!=0){
//alert("com");
document.getElementById('_sendShortMessage_ck_'+k).innerHTML="<a style='cursor:hand;color:#0000ff;' onclick=\"javascript:downloadAttach("+id+")\">查看</a>";

}else{
document.getElementById('_sendShortMessage_ck_'+k).innerHTML="";
}

}else{
     document.getElementById('_sendShortMessage_ck_'+k).innerHTML="";
 
}
}
    });
    //alert(k);//如果注释这行,就会报document.getElementById('_sendShortMessage_ck_'+k)为null,找不到这个元素。不注释,弹出alert弹框,则会正确显示,这是怎么回事?要怎么解决?

}

解决方案 »

  1.   

    for(k=1;k<=bjgs;k++){
    var id1=document.getElementById("hiddenTrainClassId"+(k-1)).innerHTML;
    alert(document.getElementById('_sendShortMessage_ck_'+k).id);//正确,存在
    alert(k);//k存在,且正确
    Ext.Ajax.request({
    url:"gotoCheckTrainClassAttachIsAlreadyUpload.action",
    params:{
    pxbid:id1         
    },
    success:function(response){
    //Ext.Msg.alert("提示",response.responseText);
    if(response.responseText!=''){
    var attachId_array=new Array();
    attachId_array=response.responseText.split(':');
    var attatchId=attachId_array[1];

    if(attatchId!=0){
    //alert("com");
    document.getElementById('_sendShortMessage_ck_'+k).innerHTML="<a style='cursor:hand;color:#0000ff;' onclick=\"javascript:downloadAttach("+id+")\">查看</a>";

    }else{
    document.getElementById('_sendShortMessage_ck_'+k).innerHTML="";
    }

    }else{
      document.getElementById('_sendShortMessage_ck_'+k).innerHTML="";
     
    }
    }
     });
    //alert(k);//如果注释这行,就会报document.getElementById( '_sendShortMessage_ck_ '+k)为null,找不到这个元素。不注释,弹出alert弹框,则会正确显示,这是怎么回事?要怎么解决?

    }