c# – 如何根据下拉列表中选择的项目在隐藏字段中设置值

我有一个动态创建的下拉列表:

foreach(XmlNode item in doc.SelectNodes("//Monits/Monit")) {
    User newuser = new User();
    newuser.Id = item.SelectSingleNode("Id").InnerText;
    newuser.UserName = item.SelectSingleNode("UserName").InnerText;
    newuser.Email = item.SelectSingleNode("Email").InnerText;
    usersddl.Items.Add(newuser.UserName); //userddl is a tag on aspx              
}              

我想知道是否有办法根据我的ddl中更改的项目将用户ID保留在隐藏字段中.
例如,我从下拉列表中选择名称Robbie,并且他的Id将保存在隐藏字段值属性中.
我没有更多的代码可以显示,因为我不知道从哪里开始……
帮助他人?

最佳答案 是的你可以.您应该为下拉列表更改的值声明事件的事件处理程序.

在这个hanlder你可以使用这个

HiddenFieldID.Value=ddl.SelectedValue;

当我说一个事件处理程序时,我的意思是在你的标记中添加这个loc

<asp:DropDownList ID="ddl" runat="server" OnSelectedIndexChanged="ddl_SelectedIndexChanged"/>

并在你的代码后面的类

protected void ddl_SelectedIndexChanged(sender object, EventArgs e)
{
     HiddenFieldID.Value=ddl.SelectedValue;
}
点赞