2009-12-07 4 views
0

Pour le code suivantComment développer/réduire un GridView imbriqué dans un élément div tout en cliquant sur un ImageButton?

<asp:GridView runat="server" ID="gvCustomers" ... 
... 
<Columns> 
    <asp:TemplateField> 
    <HeaderTemplate> 
    </HeaderTemplate> 
    <ItemTemplate> 
     <asp:ImageButton runat="server" ID="ITimgExpand" ImageUrl="~/Images/Common/expand.gif" CommandName="Select" /> 
    </ItemTemplate> 
    </asp:TemplateField> 
    ... 
    <asp:TemplateField> 
    <ItemTemplate> 
     </td></tr> 
     <tr> 
      <td colspan="3"> 
       <div id="document_<%# Eval("RENTER_ID") %>" style="margin:10; display: none; position: relative"> 
        <asp:GridView ID="gvDocuments" runat="server" ... 
        ... 

Comment peut-on ouvrir/fermer div qui comprend GridView imbriqué en cliquant ITimgExpand ImageButton?

Répondre

3

Ajouter la fonction javascript suivante:

function togglePanel(divId){ 
    if (document.getElementById){ 
    var container = document.getElementById(divId); 
    if (container.style.display =='none'){ 
     container.style.display = 'block';  
    }else{ 
     container.style.display ='none'; 
    }  
    } 
} 

Testez ensuite votre ImageButton appeler la fonction qui passe l'ID du

<asp:imagebutton id="ImgBtn" runat="server" onclientclick="togglePanel('document_<%# Eval("RENTER_ID") %>')" /> 
+0

Tout en faisant cela, div propriété d'affichage sera remis à zéro après la publication, afficher ': none' car la grille imbriquée est liée après la sélection de la ligne. – Ahmed

+0

Faites-vous quelque chose sur la publication? –

+0

Je crois que si vous venez de retourner false de la fonction, il devrait empêcher la publication. –

Questions connexes