Sdílet prostřednictvím


LinkButton.PostBackUrl Vlastnost

Definice

Získá nebo nastaví adresu URL stránky publikovat z aktuální stránky při kliknutí na LinkButton ovládací prvek.

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

Hodnota vlastnosti

Adresa URL webové stránky, na které se má publikovat z aktuální stránky při kliknutí na LinkButton ovládací prvek. Výchozí hodnota je prázdný řetězec (""), což způsobí, že stránka se publikuje sama na sebe.

Implementuje

Atributy

Příklady

Následující příklad kódu ukazuje, jak použít PostBackUrl vlastnost k provedení příspěvku napříč stránkami. Když uživatel klikne na LinkButton ovládací prvek, stránka publikuje hodnotu zadanou v textovém poli na cílovou stránku určenou PostBackUrl vlastností . Chcete-li spustit tuto ukázku, musíte také vytvořit soubor pro cílovou stránku ve stejném adresáři jako tento příklad kódu. Kód pro cílovou stránku je uvedený v dalším příkladu.

Důležité

Tento příklad obsahuje textové pole, které přijímá vstup uživatele, což je potenciální bezpečnostní hrozba. Ve výchozím nastavení ASP.NET webové stránky ověřte, že uživatelský vstup neobsahuje skript nebo elementy HTML. Další informace najdete v tématu Přehled zneužití skriptů.

<%@ 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>

Následující příklad kódu ukazuje, jak použít Page.PreviousPage vlastnost pro přístup k hodnotě, která byla publikována z jiné stránky pomocí PostBackUrl vlastnosti . Tato stránka získá řetězec, který byl publikován z předchozí stránky, a zobrazí ho uživateli. Pokud se pokusíte spustit tento příklad kódu přímo, zobrazí se chyba, protože hodnota text pole bude null. Místo toho použijte tento kód k vytvoření cílové stránky a umístěte soubor do stejného adresáře jako kód pro předchozí příklad. Název souboru musí odpovídat hodnotě zadané pro PostBackUrl vlastnost v předchozím příkladu. Když spustíte kód pro předchozí příklad, tato stránka se automaticky spustí, když dojde k příspěvku mezi stránkami.

Důležité

Tento příklad obsahuje textové pole, které přijímá vstup uživatele, což je potenciální bezpečnostní hrozba. Ve výchozím nastavení ASP.NET webové stránky ověřte, že uživatelský vstup neobsahuje skript nebo elementy HTML. Další informace najdete v tématu Přehled zneužití skriptů.

<%@ 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>

Poznámky

Vlastnost PostBackUrl umožňuje provést příspěvek na více stránkách pomocí LinkButton ovládacího prvku. PostBackUrl Nastavte vlastnost na adresu URL webové stránky, do které se publikuje při kliknutí na LinkButton ovládací prvek. Například zadání Page2.aspx způsobí, že stránka obsahující LinkButton ovládací prvek se publikuje na Page2.aspx. Pokud hodnotu vlastnosti nezadáte PostBackUrl , stránka odešle zprávu sama sobě.

Důležité

Při provádění zpětného odeslání mezi stránkami s ovládacími prvky s ověřováním na straně serveru byste měli před zpracováním zpětného odeslání zkontrolovat, zda je true vlastnost stránkyIsValid. V případě zpětného odeslání mezi stránkami je stránka, která se má zkontrolovat, PreviousPage. Následující kód jazyka Visual Basic ukazuje, jak se to dělá:

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

Další informace o technikách publikování na více stránkách najdete v tématu Publikování mezi stránkami ve webových formulářích ASP.NET.

Tuto vlastnost nelze nastavit pomocí motivů nebo šablon stylů. Další informace najdete v tématu ThemeableAttribute a ASP.NET Motivy a skiny.

Platí pro

Viz také