2010-09-03 7 views
1

J'utilise jquery facebox comme zone de confirmation de suppression. Quand je fais une suppression, il supprime mon enregistrement et je montre le resultsdiv via javascript. Mais il montre toujoursconserver les éléments div html après la mise à jour updatepanel dans asp.net

Error: document.getElementById("ImageButtonDiv") is null

voici mon code,

protected void Delete_Click(object sender, EventArgs e) 
{ 
    // my delete 
    ScriptManager.RegisterClientScriptBlock(Delete, typeof(Button), "dele", 
      "ShowImageButtonDiv();topBar('Successfully Deleted');", true); 
} 

et ma fonction javascript,

function ShowImageButtonDiv() { 
    document.getElementById("ImageButtonDiv").style.display = 'block'; 
    document.getElementById("datatable").style.display = 'block'; 
    document.getElementById("adddiv").style.display = 'none'; 
    return true; 
} 

EDIT:

Quand ma confirmation de la suppression pas aveci n un jquery facebox il obtient mon élément. Quel pourrait être le problème?

J'ai remplacé, mais ne fonctionne toujours pas,

ScriptManager.RegisterClientScriptBlock(LbDelete, typeof(LinkButton), "dele", 
"jQuery(document).ready(function(){UsersDatatable('" + HfJsonString.Value + "'); 
     ShowImageButtonDiv();topBar('Successfully Deleted');});", true); 

Répondre

1

Ceci est arrivé parce que votre script est exécuté sans doute avant que le dom est prêt alors il ne trouve pas le ImageButtonDiv.

Vous pouvez modifier cela en plaçant ce code à exécuter lorsque dom est prêt Par exemple.

ScriptManager.RegisterClientScriptBlock(Delete, typeof(Button), "dele", 
      "jQuery(document).ready(function(){ ShowImageButtonDiv();topBar('Successfully Deleted'); });" 
, true); 
+0

ne fonctionne toujours pas? –

+0

regardez mon edit .. –

+0

il suffit de changer 'jQuery' à' $ 'cela a fonctionné .. –

Questions connexes