2010-05-10 12 views

Antwort

11

Beachten Sie, dass die Mailto-Funktion eine Funktion ist, die auf der Clientseite ausgeführt werden muss. Sie werden Javascript benötigen, um es zu tun. Abhängig davon, wann Sie das mailto passieren lassen möchten, haben Sie zwei Möglichkeiten.

Wenn Sie wollen, dass es so schnell geschehen, wie die Linkbutton dann auf die LinkButton ‚s OnClientClick Ereignis gerade geklickt wird hinzufügen:

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

Wenn Sie es wünschen, nachdem der Server-Seite Code geschehen hat Sie befinden laufen Das JavaScript-Ereignis zu verdrahten, wenn die neue Seite gestartet wird:

// 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); 

Hoffe, dass hilft.

+0

gut, es gibt ein, wenn Anweisung, die in dem LinkButtons-Code ausgeführt werden muss, damit dies (eine neue E-Mail starten) im Code hinter einer "else" -Bedingung sein muss; – user279521

+0

Es funktioniert !! Aber das wusstest du schon :-) – user279521

0

Ich habe dies mit dem OnClientClick Ereignis des LinkButton erreicht.

Sie verwenden können:

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

Sie können dies auch im Code tun, wenn Sie mal eine E-Mail-Adresse aus einer Datenbank oder etwas laden:

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