asp.net在dropdownlist更改时使用javascript填充dropdownlist

本文关键字:dropdownlist javascript 填充 net asp | 更新日期: 2023-09-27 18:21:03

你好,我正在使用asp.net和javascript,我想在dropdownloadlist1更改时用List填充dropdownloadlist2。

public Dictionary<string, List<string>> dict = new Dictionary<string, List<string>>();
    DataTable dt = new DataTable();
    dt.Columns.Add("Name");
    dt.Columns.Add("Type");
    foreach (DataDefinitionResponse dr in _dr)
    {
        if (dr.Type != "Group" && dr.Type != "File")
        {
            DataRow row = dt.NewRow();
            row["Name"] = dr.Name;
            row["Type"] = dr.Type;
            dt.Rows.Add(row);
            if (dr.Type == "Dropdown")
            {
                string[] strSplit = dr.ListValue.Split('|');
                List<string> lst = new List<string>();
                foreach (string word in strSplit)
                {
                    lst.Add(word);
                }
                dict.Add(dr.Name, lst);
            }
        }
    }
    ddlFieldName.DataSource = dt;
    ddlFieldName.DataTextField = "Name";
    ddlFieldName.DataValueField = "Type";
    ddlFieldName.DataBind();
    ddlFieldName.ClearSelection();

上面是我的代码,用来填充第一个下拉列表w/c是ddlFieldName。如您所见,我使用dictionary并声明为global。现在我需要使用javascript填充第二个下拉列表。

有人能帮我吗。

Thx。

asp.net在dropdownlist更改时使用javascript填充dropdownlist

当Dropdownlist1被更改时,获取通过使用以下脚本选择的元素

<script type="text/javascript">
$jq14(document).ready(function () {
$jq14("#Dropdownlist1").change(function (e) {
window.location = "@Url.Content("~/Controller/ActionMethod/?id=")" + $jq14(this).val();
});
});
</script>

然后在控制器操作方法中接收该值并将其放入ViewBag对象中,如ViewBag=id;最后,在您的视图中,在Dropdownlist2中将ViewBag值作为循环或列表填充的种子