您好我正在使用asp.net和javascript,我希望在dropdownlist1更改时使用List填充dropdownlist2。
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。正如你所看到我使用字典并宣布全局。现在我需要使用javascript填充第二个下拉列表。
任何人都可以帮助我。
THX。
答案 0 :(得分:0)
更改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值作为循环或列表填充的播种器