asp.net 将向导步骤中一个控件的值用作后续步骤中另一个控件的值

asp.net use value from one control in a wizard step as value of another in a subsequent step

我对 asp.net 几乎一无所知,我需要一个快速的解决方案。

我有一个 asp:WizardStep,我在其中添加了一个下拉菜单,如下所示:

<asp:DropDownList ID="picklistname" runat="server">
  <asp:ListItem value="abc" selected="True">abc</asp:ListItem>
  <asp:ListItem value="def">def</asp:ListItem>
  <asp:ListItem value="ghijk">ghijk</asp:ListItem>
</asp:DropDownList>

当我 运行 它出现时。

在后面的向导步骤中,我有一个文本框控件,我想将上一个下拉列表的值放入其中,如下所示:

<asp:TextBox runat="server" Text="value from picklistname" ID="...

这可以做到吗?如果可以,怎么做?

页面语言为vb。

我无法访问隐藏代码 - 事实上,我什至找不到隐藏文件的代码,所以我怀疑它已被编译并且源代码不再存在。

编辑

我已经设法靠近了一点:

我在向导之外添加了一个隐藏字段(常规 html - 不是 asp 控件)。

然后我将 onchange="copyToPickList(this)" 添加到下拉控件中。 copyToPickList 函数只是将下拉列表的值复制到隐藏字段。

在文本框的步骤中,我可以添加一个 onclick 并调用一个将隐藏字段复制到文本框的函数。

所以现在我的问题是如何让文本框自动具有这个值(在页面加载时)?

使用此代码。您可以轻松地为文本框赋值

  var textboxId = document.getElementById("txtBoxId");
  var e = document.getElementById("picklistname"); 
  var dropDownValue= e.options[e.selectedIndex].value;
  textboxId.value = dropDownValue;    
  textboxId.focus();  

好的 - 有点不对劲,但我在文本框步骤中添加了一些脚本,这些脚本在经过特定时间后填充文本框,从而使控件有时间呈现文本框。