2012-03-12 1 views
0

J'ai une vue simple de la grille comme ceci:Comment utiliser le plugin jquery.timeago avec boundfield dans gridview?

<asp:GridView ID="gv_userActivities" runat="server" AutoGenerateColumns="False"> 
      <Columns> 
      <asp:BoundField DataField="activity" HeaderText="Activity name" /> 
       <asp:BoundField DataField="activity_date" HeaderText="Activity date" /> 
      </Columns> 
    </asp:GridView> 

Maintenant, je veux utiliser jquery.timeago plugin avec mon BoundField Activity date. Comment accéder au champ script en utilisant comme cette borne:

<script type="text/javascript"> 
     jQuery(document).ready(function() { 
      jQuery('gv_userActivities.timeago').timeago(); 
     }); 
</script> 

Répondre

1

Vous devez utiliser un champ de modèle, car le plugin timeago vous attend d'appliquer l'attribut title à l'élément DOM correspondant et la date doit être ISO 8601 au format:

<asp:GridView ID="gv_userActivities" runat="server" AutoGenerateColumns="False"> 
    <Columns> 
     <asp:BoundField DataField="activity" HeaderText="Activity name" /> 
     <asp:TemplateField HeaderText="Activity date"> 
      <ItemTemplate> 
       <span class="timeago" title="<%# string.Format("{0:o}", Eval("activity_date")) %>"> 
        <%# Eval("activity_date") %> 
       </span> 
      </ItemTemplate> 
     </asp:TemplateField> 
    </Columns> 
</asp:GridView> 

Cela suppose évidemment que la propriété activity_date dans votre source de données est une instance DateTime. Si ce n'est pas le format ToString("o") ne fonctionnera pas et vous devrez construire manuellement une date ISO 8601 dans l'attribut title que le plugin timeago peut comprendre.

puis:

<script type="text/javascript"> 
    jQuery(document).ready(function() { 
     jQuery('.timeago').timeago(); 
    }); 
</script> 
+0

merci, je ne sais pas pourquoi ce pas fonctionne. ma commande gridview dans la liste déroulante 'selectedindexchanged' –

+1

@just_name, avez-vous assigné un attribut' title' à la '' contenant une date encodée ISO 8601 qui est ce que le greffon timeago attend de vous? –

+0

mon heure de date apparaît comme ceci '12/03/2012 12:29:13' 0'' –

Questions connexes