首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >链接到选项下拉列表

链接到选项下拉列表
EN

Stack Overflow用户
提问于 2009-05-18 04:00:04
回答 2查看 191关注 0票数 0

您可以从另一个页面链接到选项下拉框中的特定值吗?

换句话说,假设我在第1页,我想锚定链接到第2页,该页有一个包含3个不同值的选项下拉框。假设默认情况下,当您转到第2页时,下拉选项框显示值1。

是否可以链接到第2页并动态更改该选项框的值?而当您单击第1页上的链接时,它将自动显示值3,而不是第2页上的值1。

EN

回答 2

Stack Overflow用户

发布于 2009-05-18 04:07:16

这当然是可能的。您可以在查询字符串中传递一个标志。因此,在page1上,你有一个类似于"page2.aspx?option=3“的page2链接。然后,在第2页的PageLoad方法中,只需从查询字符串(Request.QueryString["option"])中读取该值,并适当地设置DropDownList的选定项。

一个page1你会有...

代码语言:javascript
运行
复制
<a href="page2.aspx?option=3">link to page 2</a>

在page2的代码背后,基于Al的例子...

代码语言:javascript
运行
复制
void Page_Load(object sender, EventArgs e) {
   if (!Page.IsPostBack) {
      int option;
      if(int.TryParse(Request.QueryString["option"], out option) { //Only set the value if it is actually an integer
         ddlList.SelectedIndex = option;
      }
   }
}
票数 1
EN

Stack Overflow用户

发布于 2009-05-18 04:33:38

乔恩·弗里兰的回答基本上就是我要做的。您可能希望将用于设置列表索引的代码放在Page_Load函数的code类中。

您也可以在ASP.Net会话中保存要设置的选项的值,但如果您开始让用户在站点上来回跳跃,这就会变得有点棘手。他们可能会返回到第2页,并且仍然会将会话变量设置为某些意外的值。此外,如果用户在一段时间内处于非活动状态,或者如果服务器被重置,则可能会遇到删除会话的问题。从好的方面来说,如果把它放在会话对象中,就可以在页面之间来回移动,并将所需的所有数据放在手边。

如果您想要查看示例,请尝试如下所示:

代码语言:javascript
运行
复制
void Page_Load (object sender, EventArgs e) {
   if (! Page.IsPostBack) {
     ddlList.SelectedIndex = Request.QueryString["option"]
   }

您希望将代码放在!IsPostBack部分中,以便它只在用户第一次被定向到页面时运行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/876207

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档