我有一個Webpart在更新面板上包含幾個下拉列表。有一個提交按鈕,有一項PostBackUrl設置爲SharePoint應用程序頁面Sharepoint Webpart通過PostBackUrl發佈數據到應用程序頁面
<asp:DropDownList ID="ClassSelector" runat="server" Enabled="False"
AutoPostBack="True" onselectedindexchanged="ClassSelector_SelectedIndexChanged">
<asp:ListItem Selected="True" Value="-null-">Select Class...</asp:ListItem>
<asp:ListItem Value="1">Class 1</asp:ListItem>
</asp:DropDownList>
<asp:Button ID="btnSubmit" runat="server" Text="Show Page" Enabled="False"
PostBackUrl="~/_layouts/MyWebParts/MyAppPage.aspx" />
這個作品在重定向瀏覽器中我所創建的應用程序頁面,但我無法訪問表單數據。
在應用程序頁面的Page_Load函數中,我有以下調試代碼。
protected void Page_Load(object sender, EventArgs e)
{
Label1.Text = "";
foreach (String s in Page.Request.Form.AllKeys)
{
Label1.Text += s + ": " + Page.Request.Form[s] + "<br />";
}
}
這表明我需要的數據實際上已經發布到頁面。
ctl00$m$g_24a73cf8_8190_4ddb_b38b_bf523b12dbd3$ctl00$SemesterSelector: 28
ctl00$m$g_24a73cf8_8190_4ddb_b38b_bf523b12dbd3$ctl00$ClassSelector: 11-0021-A
但是當我嘗試訪問此爲:返回
Page.Request.Form["ClassSelector"]
沒有。我知道我必須在這裏錯過簡單的東西,但我不確定是什麼。
任何幫助是極大的讚賞。
這不會工作,因爲id會改變。我將我的解決方案部署到另一個SharePoint服務器,並得到以下響應。 ctl00 $ M $ $ g_c690a07a_e525_4c4d_9c98_efb436828ec7 $ ctl00 SemesterSelector:28 ctl00 $ M $ $ g_c690a07a_e525_4c4d_9c98_efb436828ec7 $ ctl00 ClassSelector:11-0021-A – Littlejon