2009-11-22 407 views
21

Primero estaba cambiando HyperLink.NavigateUrl en el código subyacente en Page_Load().HyperLink con NavigateUrl con Eval(). ¿Dónde está el error?

Pero después de que decidí hacerlo en el diseño usando el método Eval().

<asp:HyperLink runat="server" 
    NavigateUrl='<%# String.Format("~/Refuse.aspx?type={0}&id={1}", Eval("type"), Eval("id")) %>' Text="Refuse" /> 

o

<asp:HyperLink ID="urlRefuse" runat="server" 
    NavigateUrl='<%# String.Format("~/Refuse.aspx?type={0}&id={1}", Request["type"], Request["id"]) %>' Text="Refuse" /> 

donde id y type - son variables de Request.

Pero no funciona. Solo se muestra el texto sin editar 'Rechazar'. ¿Dónde está mi error? Gracias por adelantado.

+0

Id prperty de ur hipervínculo ha desaparecido ... ¿Es que causa el error no sé ... –

+0

@Pandiya: Suena misterioso y en el mismo tiempo - realista. Pero desafortunadamente no ayudó. – abatishchev

+2

NavigateUrl = '<% # Eval ("tipo", "id", "~/Refuse.aspx? Type = {0} & id = {1}")%>' –

Respuesta

54

esto es trabajo grande

NavigateUrl='<%# Eval("type","~/Refuse.aspx?type={0}") %>' 
+0

Dejé de usar formularios web hace años, y sin embargo, llegué años más tarde para aprender algo como esto, fue muy fácil. – Ernesto

3

Pruebe con ViewSource en su navegador, ¿qué se está representando para el cliente en su href? ¿Es lo que esperabas?. Si está tratando de usar variables de la colección de solicitudes no puede usar Eval, necesita usar los parámetros de cadena de consulta de solicitud.

<asp:HyperLink runat="server" 
    NavigateUrl='<%# String.Format("~/Refuse.aspx?type={0}&id={1}", Request["type"], Request["id"]) %>' Text="Refuse" /> 
+0

Siguiente se está representando: Refuse. Gracias por consejo. Lo usé. El mismo resultado .. – abatishchev

+1

¿Está tratando de utilizar los valores de la consulta ¿Intentó y utilizó Request ["id"] en lugar de Eval ("id")? – Phaedrus

+1

Intenta agregar Page.DataBind() a su Page_Load. – Phaedrus

-1

Intente éste:

<asp:HyperLink ID="HyperLink2" runat="server" onclick='<%# String.Format("AcceptUser({0},{1})",Eval("UserId"), Eval("TsId")) %>' NavigateUrl="javascript:void(0)" Visible='<%# (bool)Eval("CanDelete") %>'>Accept</asp:HyperLink> 
-1

Prueba esto:

HttpUtility.UrlEncode(Eval("type") 
-1

Prueba esto funcionó para mí:

Eval("type").ToString() 
14

Esto funcionó para mí

NavigateUrl='<%# String.Format("{0}.aspx?ID={1}", DataBinder.Eval(Container.DataItem, "Category"), DataBinder.Eval(Container.DataItem, "Post_ID")) %>' 
Cuestiones relacionadas