LinkButton.PostBackUrl Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar eller anger url:en för sidan som ska skickas till från den aktuella sidan när LinkButton kontrollen klickas.
public:
virtual property System::String ^ PostBackUrl { System::String ^ get(); void set(System::String ^ value); };
[System.Web.UI.Themeable(false)]
public virtual string PostBackUrl { get; set; }
[<System.Web.UI.Themeable(false)>]
member this.PostBackUrl : string with get, set
Public Overridable Property PostBackUrl As String
Egenskapsvärde
Url:en för webbsidan som ska skickas till från den aktuella sidan när LinkButton kontrollen klickas. Standardvärdet är en tom sträng (") som gör att sidan skickas tillbaka till sig själv.
Implementeringar
- Attribut
Exempel
Följande kodexempel visar hur du använder egenskapen PostBackUrl för att utföra ett inlägg på flera sidor. När användaren klickar på LinkButton kontrollen publicerar sidan det värde som angetts i textrutan till målsidan som anges av PostBackUrl egenskapen. Om du vill köra det här exemplet måste du också skapa en fil för målsidan i samma katalog som det här kodexemplet. Koden för målsidan finns i nästa exempel.
Important
Det här exemplet har en textruta som accepterar användarindata, vilket är ett potentiellt säkerhetshot. Som standard kontrollerar ASP.NET webbsidor att användarindata inte innehåller skript- eller HTML-element. Mer information finns i Översikt över skriptexploateringar.
<%@ page language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="head1" runat="server">
<title>LinkButton.PostBackUrl Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>LinkButton.PostBackUrl Example</h3>
Enter a value to post:
<asp:textbox id="TextBox1"
runat="Server">
</asp:textbox>
<br /><br />
<asp:linkbutton id="LinkButton1"
text="Post back to this page"
runat="Server">
</asp:linkbutton>
<br /><br />
<asp:linkbutton id="LinkButton2"
text="Post value to another page"
postbackurl="LinkButton.PostBackUrlPage2cs.aspx"
runat="Server">
</asp:linkbutton>
</form>
</body>
</html>
<%@ page language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="head1" runat="server">
<title>LinkButton.PostBackUrl Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>LinkButton.PostBackUrl Example</h3>
Enter a value to post:
<asp:textbox id="TextBox1"
runat="Server">
</asp:textbox>
<br /><br />
<asp:linkbutton id="LinkButton1"
text="Post back to this page"
runat="Server">
</asp:linkbutton>
<br /><br />
<asp:linkbutton id="LinkButton2"
text="Post value to another page"
postbackurl="LinkButton.PostBackUrlPage2vb.aspx"
runat="Server">
</asp:linkbutton>
</form>
</body>
</html>
Följande kodexempel visar hur du använder Page.PreviousPage egenskapen för att komma åt ett värde som har publicerats från en annan sida med hjälp av PostBackUrl egenskapen. Den här sidan hämtar strängen som publicerades från föregående sida och visar den för användaren. Om du försöker köra det här kodexemplet direkt får du ett fel eftersom värdet för text fältet blir null. Använd i stället den här koden för att skapa en målsida och placera filen i samma katalog som koden för föregående exempel. Namnet på filen måste motsvara det värde som angavs för PostBackUrl egenskapen i föregående exempel. När du kör koden för föregående exempel körs den här sidan automatiskt när korssidesinlägget inträffar.
Important
Det här exemplet har en textruta som accepterar användarindata, vilket är ett potentiellt säkerhetshot. Som standard kontrollerar ASP.NET webbsidor att användarindata inte innehåller skript- eller HTML-element. Mer information finns i Översikt över skriptexploateringar.
<%@ page language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void Page_Load (object sender, System.EventArgs e)
{
string text;
// Get the value of TextBox1 from the page that
// posted to this page.
text = ((TextBox)PreviousPage.FindControl("TextBox1")).Text;
// Check for an empty string.
if (text != "")
PostedLabel.Text = "The string posted from the previous page is "
+ text + ".";
else
PostedLabel.Text = "An empty string was posted from the previous page.";
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="head1" runat="server">
<title>LinkButton.PostBackUrl Target Page Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>LinkButton.PostBackUrl Target Page Example</h3>
<br />
<asp:label id="PostedLabel"
runat="Server">
</asp:label>
</form>
</body>
</html>
<%@ page language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
Dim text As String
' Get the value of TextBox1 from the page that posted
' to this page.
text = CType((PreviousPage.FindControl("TextBox1")), TextBox).Text
' Check for an empty string.
If Not (text = "") Then
PostedLabel.Text = "The string posted from the previous page is " _
& text & "."
Else
PostedLabel.Text = "An empty string was posted from the previous page."
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="head1" runat="server">
<title>LinkButton.PostBackUrl Target Page Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>LinkButton.PostBackUrl Target Page Example</h3>
<br />
<asp:label id="PostedLabel"
runat="Server">
</asp:label>
</form>
</body>
</html>
Kommentarer
Med PostBackUrl egenskapen kan du utföra ett sidövergripande inlägg med hjälp av LinkButton kontrollen.
PostBackUrl Ange egenskapen till url:en för webbsidan som ska skickas till när LinkButton kontrollen klickas. Om du till exempel anger Page2.aspx gör att sidan som innehåller kontrollen skickas LinkButton till Page2.aspx. Om du inte anger något värde för PostBackUrl egenskapen skickas sidan tillbaka till sig själv.
Important
När du utför ett korssidigt efterinlägg med kontroller med verifiering på serversidan bör du kontrollera att sidans IsValid egenskap är true innan du bearbetar efteråterställningen. När det gäller ett sidöverlägg på flera sidor är sidan som ska kontrolleras föregående sida. Följande Visual Basic kod visar hur det går till:
Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Page.PreviousPage.IsValid Then
' Handle the post back
Else
Response.Write("Invalid")
End If
End Sub
Mer information om metoder för publicering mellan sidor finns i Cross-Page Posting i ASP.NET Web Forms.
Den här egenskapen kan inte anges med teman eller formatmallsteman. Mer information finns i ThemeableAttribute and ASP.NET Themes and Skins.