在.Net中预选下拉值

时间:2015-02-11 21:07:54

标签: asp.net drop-down-menu automation

我有一个webform,其字段根据下拉列表的值而变化。有没有办法可以链接到这个页面,在加载时选择其中一个值。

例如,如果表单是关于旅行的,则外部“汽车”链接会在下拉列表中自动选择“汽车”。

1 个答案:

答案 0 :(得分:0)

您可以使用QueryString参数,例如?preselect=car,然后在代码中对该参数的值进行操作:

<%@ Page Language="C#" AutoEventWireup="true" %>

<script runat="server">

    private void page_load(Object sender, EventArgs e)
    {
        if (Request.QueryString.AllKeys.Contains("preselect"))
        {
            MyDropDownList.Items.Cast<ListItem>()
                .Where(li => li.Value == Request.QueryString["preselect"].ToString())
                .First().Selected = true;
        }
    }

</script>

<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta charset="utf-8" />
    <title></title>    
</head>
<body>
    <form id="form1" runat="server">
        <asp:DropDownList runat="server" ID="MyDropDownList">
            <asp:ListItem Value="asdf">Something</asp:ListItem>
            <asp:ListItem Value="car">Car</asp:ListItem>
        </asp:DropDownList>
    </form>
</body>
</html>