none
Habilitar nuevamente un botón usando Update Panel RRS feed

  • Pregunta

  • Buenos días,

    Tengo el siguiente formulario

    el botón "exportar" lo deshabilito en el evento Load del formulario y quiero volver a habilitarlo despues de dar click al botón de "buscar", y como "exportar" debe estar fuera de cualquier update panel, no lo hace y necesito de alguna manera volver a habilitarlo.

    sábado, 10 de septiembre de 2016 14:42

Respuestas

  • como "exportar" debe estar fuera de cualquier update panel, no lo hace

    ¿Por qué debe estar fuera de cualquier UpdatePanel? Podrías ponerle un UpdatePanel pequeñito solo para él. De forma predeterminada, cuando actualizas un UpdatePanel se actualizan todos, así que el botón también se actualizaría. Pero si quieres independizarlos, les puedes poner el UpdateMode=Conditional, y entonces cuando quieras actualizar el botón Exportar llamas al .Update de su propio UpdatePanel y ya está.

    Si eso no vale, y no le puedes poner un UpdatePanel al botón de Exportar, entonces tendrás que hacer un postback completo de la página para cambiarle el estado al botón de Exportar. Para ello, añade el botón Buscar como PostBackTrigger de su UpdatePanel (en lugar de ser un AsyncPostaBackTrigger, que es el valor predeterminado para los controles que se encuentran en el interior del panel).

    sábado, 10 de septiembre de 2016 15:07
  • En este articulo

    [ASP.NET] PopUp Filtro – Usando Ajax Toolkit ModalPopupExtrnder

    planteo el mismo tema, basicamente vas a tener que usar javscript para acceder al control que esta por fuera del updatepanel

    analiza el titulo Usando directamente jquery veras como se define codigo cliente usando jquery para que al retorno del postback que realiza el updatepanel al evento se ejecute ese codigo cliente que en tu caso habilite el boton

    En el codigo del evento del lado del servidor podrias definir

    string script = @" $(""[id*='buttonId']"").prop( "disabled", false );";
    
    ScriptManager.RegisterStartupScript(this, typeof(Page), "habilitarboton", script, true);
    entonces cuando vuelva al cliente lo ejecutara habilitando el boton


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina



    lunes, 12 de septiembre de 2016 11:28

Todas las respuestas

  • como "exportar" debe estar fuera de cualquier update panel, no lo hace

    ¿Por qué debe estar fuera de cualquier UpdatePanel? Podrías ponerle un UpdatePanel pequeñito solo para él. De forma predeterminada, cuando actualizas un UpdatePanel se actualizan todos, así que el botón también se actualizaría. Pero si quieres independizarlos, les puedes poner el UpdateMode=Conditional, y entonces cuando quieras actualizar el botón Exportar llamas al .Update de su propio UpdatePanel y ya está.

    Si eso no vale, y no le puedes poner un UpdatePanel al botón de Exportar, entonces tendrás que hacer un postback completo de la página para cambiarle el estado al botón de Exportar. Para ello, añade el botón Buscar como PostBackTrigger de su UpdatePanel (en lugar de ser un AsyncPostaBackTrigger, que es el valor predeterminado para los controles que se encuentran en el interior del panel).

    sábado, 10 de septiembre de 2016 15:07
  • El botón "Exportar" También debe de estar dentro de un update panel, para que pueda funcionar de manera correcta 

    Saludos!!!

    sábado, 10 de septiembre de 2016 18:15
  • En este articulo

    [ASP.NET] PopUp Filtro – Usando Ajax Toolkit ModalPopupExtrnder

    planteo el mismo tema, basicamente vas a tener que usar javscript para acceder al control que esta por fuera del updatepanel

    analiza el titulo Usando directamente jquery veras como se define codigo cliente usando jquery para que al retorno del postback que realiza el updatepanel al evento se ejecute ese codigo cliente que en tu caso habilite el boton

    En el codigo del evento del lado del servidor podrias definir

    string script = @" $(""[id*='buttonId']"").prop( "disabled", false );";
    
    ScriptManager.RegisterStartupScript(this, typeof(Page), "habilitarboton", script, true);
    entonces cuando vuelva al cliente lo ejecutara habilitando el boton


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina



    lunes, 12 de septiembre de 2016 11:28