LinkButton.PostBackUrl Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает URL-адрес страницы для публикации с текущей страницы при LinkButton щелчке элемента управления.
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
Значение свойства
URL-адрес веб-страницы для публикации с текущей страницы при LinkButton щелчке элемента управления. Значение по умолчанию — пустая строка (""), которая приводит к тому, что страница будет отправляться обратно к себе.
Реализации
- Атрибуты
Примеры
В следующем примере кода показано, как использовать PostBackUrl свойство для выполнения перекрестной записи. Когда пользователь щелкает LinkButton элемент управления, страница публикует значение, введенное в текстовом поле, на целевую страницу, указанную свойством PostBackUrl . Чтобы запустить этот пример, необходимо также создать файл для целевой страницы в том же каталоге, что и в этом примере кода. Код целевой страницы представлен в следующем примере.
Это важно
В этом примере есть текстовое поле, которое принимает входные данные пользователя, которое является потенциальной угрозой безопасности. По умолчанию ASP.NET веб-страницы проверяют, что входные данные пользователя не включают скрипт или ЭЛЕМЕНТЫ HTML. Дополнительные сведения см. в разделе "Обзор эксплойтов скриптов".
<%@ 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>
В следующем примере кода показано, как использовать Page.PreviousPage свойство для доступа к значению, размещенному на другой странице с помощью PostBackUrl свойства. Эта страница получает строку, опубликованную на предыдущей странице, и отображает ее пользователю. Если вы попытаетесь запустить этот пример кода напрямую, вы получите ошибку, так как значение text поля будет null. Вместо этого используйте этот код для создания целевой страницы и размещения файла в том же каталоге, что и код предыдущего примера. Имя файла должно соответствовать значению, указанному для PostBackUrl свойства в предыдущем примере. При запуске кода для предыдущего примера эта страница будет выполняться автоматически при возникновении перекрестной записи.
Это важно
В этом примере есть текстовое поле, которое принимает входные данные пользователя, которое является потенциальной угрозой безопасности. По умолчанию ASP.NET веб-страницы проверяют, что входные данные пользователя не включают скрипт или ЭЛЕМЕНТЫ HTML. Дополнительные сведения см. в разделе "Обзор эксплойтов скриптов".
<%@ 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>
Комментарии
Свойство PostBackUrl позволяет выполнять перекрестную запись с помощью LinkButton элемента управления.
PostBackUrl Задайте свойству URL-адрес веб-страницы для публикации при щелчке LinkButton элемента управления. Например, указание Page2.aspx приводит к тому, что страница, содержащая LinkButton элемент управления для публикации Page2.aspx. Если значение свойства PostBackUrl не указано, страница публикуется обратно к себе.
Это важно
При выполнении перекрестной обратной передачи с элементами управления с проверкой на стороне сервера необходимо убедиться, что свойство страницы IsValid перед true обработкой обратной передачи. В случае перекрестной обратной передачи страница, проверяемая страница — "НазадPage". В следующем коде Visual Basic показано, как это сделать:
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
Дополнительные сведения о межстраничных методах публикации см. в разделе " Перекрестная публикация" в веб-формах ASP.NET.
Это свойство не может быть задано темами или темами таблицы стилей. Дополнительные сведения см. в статье ThemeableAttributeи ASP.NET темы и скины.