所以我有2页。它们都具有相同的母版页,并且是相同 Web 应用程序的一部分。我正在尝试将一个页面提交给另一个页面。在提交页面上,我有一些元素,例如
<ajaxToolkit:ComboBox ID="cmboOptions" AutoCompleteMode="SuggestAppend"
CaseSensitive="false" ItemInsertLocation="Append" runat="server" DropDownStyle="DropDownList">
<asp:ListItem></asp:ListItem>
<asp:ListItem Text="Option 1" Value="opt1"></asp:ListItem>
<asp:ListItem Text="Option 2" Value="opt2"></asp:ListItem>
</ajaxToolkit:ComboBox>
我在用
<asp:Button ID="btnSubmit" runat="server" Text="Submit"
PostBackUrl="~/Results.aspx" />
提交页面。
在页面加载后面代码的结果页面上,我有
NameValueCollection nvc = Request.Form;
string selectedOption = nvc["cmboOptions"];
如果我在调试时查看 NVC,我可以看到
ctl00$MainContent$cmboOptions$TextBox
值为“选项 1”,但我的字符串仍包含 null 值。我什至不想通过硬编码混淆的 ID 来获取值,而且我无法在 ASP.net 元素上设置名称属性。
有谁知道更好/正确的方法来完成我正在做的事情?我想坚持使用 ajaxControlToolkit 组合框,因为它们对用户很好,尽管我希望我坚持使用 jQuery 而不是听我的朋友的话,现在切换为时已晚。
我看这里没有任何运气
和这里
和这里
http://msdn.microsoft.com/en-us/library/6c3yckfw.aspx
我尝试了 PreviousPage.FindControl ,但我总是得到空值。
谢谢你的时间!
编辑:
避免使用 AjaxControlToolKit。如果您想偷懒并拖放甜蜜的 UI 元素,这很好,但让简单的事情正常工作只是一件令人头疼的事情!使用 jQuery。