由於@TheVillageIdiot說,url重寫是一種更好的方法。但是你也可以使用cross-page posting的能力。檢查出來:
標記
<asp:HiddenField ID="HiddenField1" runat="server" ClientIDMode="Static" />
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" PostBackUrl="~/Second.aspx" Text='<%# Bind("Text") %>' OnClientClick='<%# "LinkButton1_Click(\"" + Eval("Value") + "\")" %>' />
</ItemTemplate>
</asp:Repeater>
<script type="text/javascript">
function LinkButton1_Click(v) {
document.getElementById('HiddenField1').value = v;
}
</script>
正如你可以在上面的代碼片斷看到的,你必須添加一個隱藏字段通過簡單的JavaScript來選擇的項目存儲。我還定義了一個名爲SelectedValue
的屬性,以獲取其他隱藏字段的值。
以下指令到目標頁面的代碼背後
protected void Page_Load(object sender, EventArgs e)
{
Repeater1.DataSource = new[] {
new { Text = "Item 1", Value = "Item 1" },
new { Text = "Item 2", Value = "Item 2" },
new { Text = "Item 3", Value = "Item 3" }
};
Repeater1.DataBind();
}
public string SelectedValue
{
get { return HiddenField1.Value; }
}
第二頁
添加。
<%@ PreviousPageType VirtualPath="~/Default.aspx" %>
最後,你必須通過Page
類PreviousPage
屬性訪問到前一頁。
string value = ((_Default)this.PreviousPage).SelectedValue;
_Why_你想隱藏它嗎?作爲高級用戶,直接更改URL以獲得所需效果可能是一種優勢。例如。 'HTTP://www.google.com/search Q =本+ +會+工作great'? – 2011-05-16 08:27:08
爲什麼白癡不斷在這些論壇上問「你爲什麼要隱藏它」的問題!?真的......安全......呃!並非所有網站都是完整的公共領域。有些是內部的,需要確保某些信息的安全。 – Fandango68 2017-09-20 04:38:36