2011-01-25 3 views
5

que necesito para pasar div id cliente para Javascript de un repetidorCómo pasar ID de cliente del punto en el repetidor de Javascript

tengo 3 divs dentro de un repetidor tengo evento onmouseover quiero agarrar ID de cliente del elemento div ¿hay alguna manera de que me puedo pasar cliente exacta del elemento div

Can u chicos me ayude Gracias

+1

Podría por favor mostrar el código que tiene ¿hasta aquí? Eso hará las cosas más claras. –

+0

Puede ser útil: http://stackoverflow.com/questions/641280/reference-asp-net-control-by-id-in-javascript ver la segunda respuesta –

Respuesta

6

Algo como esto (si he entendido que correctamente):

de marcado:

<asp:Repeater id="myRepeater" OnItemDataBound="myRepeater_ItemDataBound" runat="server"> 
    <ItemTemplate> 
     <div id="myDiv" runat="server">......</div> 
    </ItemTemplate> 
</asp:Repeater> 

código subyacente:

protected void myRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e) 
{ 
    if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) 
    { 
     HtmlGenericControl myDiv = e.Item.FindControl("myDiv") as HtmlGenericControl; 
     // you can just pass "this" instead of "myDiv.ClientID" and get the ID from the DOM element 
     myDiv.Attributes.Add("onmouseover", "doStuff('" + myDiv.ClientID + "');"); 
    } 
} 
0

Si el repetidor vuelve al navegador, puede obtener el elemento repetidor con:

var rep = $get("<%= rpt.ClientID %>"); 

De lo contrario, envolver un

<DIV id="RepeaterEL"></div> 

alrededor del repetidor, y acceder a sus hijos, ya sea a través de JavaScript puro (y los childNodes colección), o el uso de jQuery como

$("#RepeaterEL").children("DIV").each(function(i) {  
    var id = $(this).attr("id"); //<- pointer to DIV }); 
+0

http://stackoverflow.com/questions/2567040/asp -control-id-generation-inside-repeater tengo el mismo problema, ¿hay alguna manera de pasar el ID del cliente a javascript? – jhon

5

Si desea hacerlo en el marcado, puede utilizar lo siguiente para obtener la ClientId:

<%# Container.FindControl("_RepeaterEL").ClientID %> 
2
<asp:Panel CssClass="modal hide fade" ID="myModal" runat="server"> 
          <div class="modal-header"> 
           <a class="close" data-dismiss="modal">×</a> 
           <h3>Add to cart</h3> 
          </div> 
          <div class="modal-body"> 
           <nav> 
            <iframe seamless src="/ToCart/<%# DataBinder.Eval(Container.DataItem, "code")%>" 
             style="border-style: none;"> </iframe> 
           </nav> 
          </div> 
</asp:Panel> 

<a data-toggle="modal" href="#<%#Container.FindControl("myModal").ClientID%>"> 
    <div class="add-to-cart-one">+</div> 
</a> 
Cuestiones relacionadas