我在我的项目中有两个从EntityDataSource绑定的下拉列表。第二个下拉列表必须基于第一个DropDownlist进行绑定。我该怎么做呢?

发布于 2012-06-02 15:25:21
如果你正在使用ASP.net AJAX,AJAX控件工具包有一个叫做"Cascading DropDown“的控件,你可以使用它。
MS Sample
发布于 2012-06-02 16:18:19
如果你不需要回发,你可以这样做:
<select id="s1" >
<option>-----</option>
<option>item 1</option>
<option>item 2</option>
<option>item 3</option>
</select>
<br />
<select id="s2" >
</select>
<script type="text/javascript">
var s1 = document.getElementById("s1");
var s2 = document.getElementById("s2");
s1.onchange = function () {
s2.options.length = 0;
var value = this.value;
if (value != "-----") {
var opt = document.createElement("OPTION");
opt.text = "sub " + value;
opt.value = "sub " + value;
s2.options.add(opt);
}
}
</script>或者,您可以在服务器端执行相同的逻辑,但这会将回发带到场景中。
发布于 2013-11-28 19:41:38
假设ID为Entity1,属性为Name,属性为ID,Entity1ID,OrderNumber为Entity2。
绑定
`Dropdownlist1.Datasource = list(of Entity1)
Dropdownlist1.DataValueField = "ID"
Dropdownlist1.DataTextField = "Name"
Dropdownlist1.databind()`在dropdownlist1的selectedvalue change事件中,检查用户是否选择了有效值,然后从Entity2数据源中进行linq搜索,并将其绑定到Dropdownlist2。
你也可以使用Avani提到的级联dropdownlist。
https://stackoverflow.com/questions/10860472
复制相似问题