100分求助:DROPDOWNLIST与 LISTBOX联动
请问,页面有一个DROPDOWNLIST,一个LISTBOX,选择DROPDOWNLIST绑定后的数据,然后点添加按钮,选中的值出现在LISTBOX中,同时可以从DROPDOWNLIST中删除.
这个要怎么实现?
------解决方案--------------------为什么一定要用AJAX?
在DropDownList的SelectedIndexChanging事件中:
listBoxVarName.Items.Add(((DropDownList)sender).SelectedItem);
listBoxVarName.Items.Remove(((DropDownList)sender).SelectedItem);//删除一定要在添加之后,否则会出现空值异常...
如果要AJAX,就把它们放到UpdatePanel中
------解决方案--------------------http://www.codeproject.com/useritems/Select_List_Box.asp
刚好看到了这篇文章,并试用了一下感觉不错。
你的这个问题和这个类似,区别只是这个两边都是LISTBOX,参照着改一下应该很容易的。
昨天把这个改成了可以多项同时移动的,把页面后台代码也给你参考一下:
protected void Button1_Click(object sender, EventArgs e)
{
MoveItem(lstMain, lstSelect);
}
protected void Button2_Click(object sender, EventArgs e)
{
MoveItem(lstSelect, lstMain);
}
private void MoveItem(ListBox fromListBox, ListBox toListBox)
{
if (fromListBox.SelectedIndex > -1)
{
ListItemCollection listItemCollection = new ListItemCollection();
foreach (ListItem listItem in fromListBox.Items)
{
if (listItem.Selected)
{
listItemCollection.Add(listItem);
}
}
foreach (ListItem listItem in listItemCollection)
{
toListBox.Items.Add(listItem);
fromListBox.Items.Remove(listItem);
}
}
}
------解决方案--------------------protected void Button1_Click3(object sender, EventArgs e)
{
ListItem item = this.DropDownList1.SelectedItem;
if (item != null)
{
item.Selected = false;
this.ListBox1.Items.Add(item);
this.DropDownList1.Items.Remove(item);
}
}
------解决方案--------------------具体实现过程:
ListBox id:ListBox1
DROPDOWNLIST id:DROPDOWNLIST1
在添加按钮的click事件中包括,对DROPDOWNLIST1数据源的数据的删除操作和对ListBox1数据源的数据的添加操作
ListBox1.DataBind();
DROPDOWNLIST1.DataBind();