2010-05-10 9 views

Respuesta

11

Tenga en cuenta que la funcionalidad mailto es una función que debe surgir del lado del cliente. Necesitarás javascript para hacerlo. Dependiendo de cuándo quiera que suceda el correo tiene dos opciones.

Si quieren que suceda tan pronto como se hace clic en el LinkButton continuación, sólo tiene que añadir a la LinkButton 's OnClientClick evento:

<asp:LinkButton runat="server" ID="btnEmail" Text="Send Email" 
    OnClientClick="window.open('mailto:[email protected]','email');"> 
</asp:LinkButton> 

Si quieren que suceda después del código del lado del servidor se ha quedado su son va a tener cableado el evento javascript para ejecutar cuando se inicia la nueva página:

// At the end of your LinkButton server side OnClick event add the following code: 
ClientScript.RegisterStartupScript(this.GetType(), "FormLoading", 
    "window.open('mailto:[email protected]','email');", true); 

Espero que ayude.

+0

así, hay un caso declaración que debe ejecutarse en el código LinkButtons detrás, por lo que esto (iniciar un nuevo correo electrónico) tendrá que estar en el código detrás como una condición "else"; – user279521

+0

¡Funciona! Pero tu ya lo sabías :-) – user279521

0

Lo he logrado utilizando el evento OnClientClick de LinkButton.

Se puede utilizar:

<asp:LinkButton runat="server" ID="btnEmail" Text="Send Email" 
    OnClientClick="window.location.href = 'mailto:[email protected]?subject=Email Subject';"> 
</asp:LinkButton> 

También puede hacer esto en el código, en caso de tener que cargar una dirección de correo electrónico de una base de datos o algo:

btnEmail.OnClientClick = "window.location.href = 'mailto:[email protected]?subject=Email Subject';"; 
Cuestiones relacionadas