参考:首先有个模糊查询,然后把查询的结果都显示在左侧listbox中,然后可以通过中间按钮进行添加或删除选中的值。
aspx代码:<form runat="server">
    
            <table style="text-align: center; width: 90%">
                <tr>
                    <td>
                        会员名称:
                    </td>
                    <td>
                        <asp:TextBox runat="server" ID="txtMName"></asp:TextBox>
                    </td>
                    <td>
                        会员ID:
                    </td>
                    <td>
                        <asp:TextBox runat="server" ID="txtmid"></asp:TextBox>
                    </td>
                    <td>
                        会员等级:
                    </td>
                    <td>
                        <asp:DropDownList runat="server" ID="ddlmlid">
                        </asp:DropDownList>
                    </td>
                    <td>
                        <asp:Button runat="server" ID="btnselect" Text="查询" CssClass="bt2" 
                            onclick="btnselect_Click"/>
                    </td>
                </tr>
            </table>
            <table>
                <tr>
                    <td align="right" style="width: 30%; padding-left: 200px">
                        可选会员
                    </td>
                    <td style="text-align: center;">
                    </td>
                    <td align="left" style="width: 25%; padding-right: 200px" width="200px">
                        已选会员
                    </td>
                </tr>
                <tr>
                    <td align="right" style="width: 30%">
                        <asp:ListBox runat="server" ID="listleftmname" Height="400px" Width="200px"  
                            SelectionMode="Multiple" ></asp:ListBox>
                    </td>
                    <td align="center">
                        <table>
                            <tr>
                                <td>
                                    <asp:Button runat="server" ID="btnaddallmname" CssClass="bt2" CausesValidation="false"
                                        Text="&gt;&gt;" onclick="btnaddallmname_Click" />
                                </td>
                            </tr>
                            <tr>
                                <td>
                                    <asp:Button runat="server" ID="btnaddmname" CssClass="bt2" CausesValidation="false"
                                        Text="&gt;" onclick="btnaddmname_Click" />
                                </td>
                            </tr>
                            <tr>
                                <td>
                                    <asp:Button runat="server" ID="btndeletemname" CssClass="bt2" CausesValidation="false"
                                        Text="&lt;" onclick="btndeletemname_Click" />
                                </td>
                            </tr>
                            <tr>
                                <td>
                                    <asp:Button runat="server" ID="btndeleteallmname" CssClass="bt2" CausesValidation="false"
                                        Text="&lt;&lt;" onclick="btndeleteallmname_Click" />
                                </td>
                            </tr>
                        </table>
                    </td>
                    <td align="left" style="width: 30%">
                        <asp:ListBox runat="server" ID="listrightmname" Height="400px" Width="200px" 
                            SelectionMode="Multiple"></asp:ListBox>
                    </td>
                </tr>
            </table>    </form>.cs代码:
 protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack) 
        {
            Comlib.BindSqlHelper.BindDropDownList(ddlmlid, "ML_Name", "ML_Id", CommandType.Text, "select * from TG_MemberLevel", null);//绑定dropdownlist
            ddlmlid.Items.Insert(0, new ListItem("请选择", "0"));        }
    }
    //查询
    protected void btnselect_Click(object sender, EventArgs e)
    {
        string mid = "select M_Name from TG_Member where 1=1";//根据条件组合查询
        if (txtMName.Text.Trim() != "") 
        {
            mid += " and M_Name like'%" + txtMName.Text.Trim() + "%'";
        }
        if (txtmid.Text.Trim() != 0) 
        {
            mid += " and M_Id='" + txtmid.Text.Trim() + "'";
        }
        if (ddlmlid.SelectedIndex != 0) 
        {
            mid += " and ML_Id='" + ddlmlid.SelectedIndex + "'";
        }
        List<Model.TG_Member> lis = new List<Model.TG_Member>();
        写到这里不知道该咋写了,不知道该咋绑定了,我以前对list泛型集合接触的少,而以前绑定都是用datatable绑定,但这里datatable行不通了,因为查询显示在listbox中是个值。        
    }
    //多项添加
    protected void btnaddallmname_Click(object sender, EventArgs e)//添加操作
    {
        List<Model.TG_Member> list = new List<Model.TG_Member>();
        int no = list.Count;
        ListItem[] ilist = new ListItem[no] { };
        int i = 0;
        foreach (Model.TG_Member item in list)
        {
            ListItem it = new ListItem(item.M_Name, item.M_Id);
            ilist[i] = it;
            i++;
        }
        //上面这也是在百度上搜的,但还是没有思路,求高手指教。
        
        
        //this.listleftmname.Items.AddRange(
    }
    //单项添加
    protected void btnaddmname_Click(object sender, EventArgs e)
    {    }
    //删除
    protected void btndeletemname_Click(object sender, EventArgs e)
    {    }
    //多项删除
    protected void btndeleteallmname_Click(object sender, EventArgs e)
    {    }
 参考:,希望高手多多提意见,小弟绝对不利兮给分,谢谢。

解决方案 »

  1.   

    protected void btnSet_Click(object sender, EventArgs e)
        {
            foreach (ListItem item in lbCxLeft.Items)
            {
                if (item.Selected)
                {
                    lbCxRight.Items.Add(item);
                }
            }
            foreach (ListItem item in lbCxRight.Items)
            {
                if (lbCxLeft.Items.FindByValue(item.Value) != null)
                {
                    lbCxLeft.Items.Remove(item);
                }
            }
        }
        protected void btnSetAll_Click(object sender, EventArgs e)
        {
            foreach (ListItem item in lbCxLeft.Items)
            {
                lbCxRight.Items.Add(item);
            }
            lbCxLeft.Items.Clear();
        }
        protected void btnDel_Click(object sender, EventArgs e)
        {
            foreach (ListItem item in lbCxRight.Items)
            {
                if (item.Selected)
                {
                    lbCxLeft.Items.Add(item);
                }
            }
            foreach (ListItem item in lbCxLeft.Items)
            {
                if (lbCxRight.Items.FindByValue(item.Value) != null)
                {
                    lbCxRight.Items.Remove(item);
                }
            }
        }
        protected void btnDelAll_Click(object sender, EventArgs e)
        {
            foreach (ListItem item in lbCxRight.Items)
            {
                lbCxLeft.Items.Add(item);
            }
            lbCxRight.Items.Clear();
        }应该可以给分了
      

  2.   

    list里面有 add和removeat方法
    添加和删除元素你按照这些来对两个list操作就行了
      

  3.   

    就是根据list集合中的removeat移除,和add添加的方法,楼上正解
      

  4.   

    刚刚做个这个,我的是3级,第一个是大类,第二个为小类,第三个选中的类型。我把我的js贴出来参考下。
    -------------------------------
    function select()
            {
                $("#selecttype2 option").each(function(){
                    if($(this).attr("selected"))
                    {
                        var oldhtml=$("#selecttype3").html();
                        var name=$(this).html();
                        var value=$(this).val();
                        oldhtml += "<option value="+value+">"+name+"</option>";
                        $("#selecttype3").html(oldhtml);
                    }
                });
            }        function deleteoption()
            {
                $("#selecttype3 option").each(function(i){
                    if($(this).attr("selected"))
                    {
                       $(this).remove();
                    }
                });
            }
    -----------------------------------
    <td>
                        <select id="selecttype2" multiple="true" runat="server" style="height: 350px; width: 200px"
                            onclick="select()">
                        </select>
                    </td>
                    <td>
                        <input id="btnall" type="button" value=">>" onclick="selectall()" />
                        <br />
                        <input id="btndelete" type="button" value="<<" onclick="removeoption()" />
                    </td>
                    <td>
                        <select id="selecttype3" multiple="true" runat="server" style="height: 350px; width: 200px"
                            onclick="deleteoption()">
                        </select>
                    </td>
      

  5.   

      function removeoption()
            {
                $("#selecttype3 option").remove();
            }
            
            function selectall()
            {
                $("#selecttype2 option").each(function(){
                     var oldhtml=$("#selecttype3").html();
                     var name=$(this).html();
                     var value=$(this).val();
                     oldhtml += "<option value="+value+">"+name+"</option>";
                     $("#selecttype3").html(oldhtml);
                });
            }
      

  6.   


    字符串拼接
    把where条件拼接起来就是了
      

  7.   

    参考:
    http://www.cnblogs.com/insus/articles/1652164.html
      

  8.   

     <script language="javascript" type="text/javascript">
           
           // 乡镇点击选择绑定相关站点
           function showNextCode()
            {
                document.getElementById('lsbStations').length = 0;
                var id = document.getElementById("<%=drpXiangzheng.ClientID%>").value;
                var dfrtms = window.parent.dialogArguments.document.getElementById("Dfrtms").value;
                var tab =MountainTorrents.Monitor.ShowChooseList.BindStationsCode(id,dfrtms).value; 
                var vlist = "";
                
                for (var i = 0; i < tab.Rows.length; i++)
                 {
                 var txt = tab.Rows[i]["StName"];
                 var vol = tab.Rows[i]["StCode"];
                 vlist += "<option value=" +vol+ ">" +txt+ "</option>"; 
                 }
                
                 $("#lsbStations").append(vlist); 
            }
              
            // 小流域点击选择绑定相关站点
           function showNextDrcn()
           {
                document.getElementById('lsbStations').length = 0;
                var id = document.getElementById("<%=drpLiuyu.ClientID%>").value; 
                var dfrtms = window.parent.dialogArguments.document.getElementById("Dfrtms").value;
                var tab =MountainTorrents.Monitor.ShowChooseList.BindStationsDrcn(id,dfrtms).value; 
                var vlist = "";
                
                for (var i = 0; i < tab.Rows.length; i++)
                {
                 var txt = tab.Rows[i]["StName"];
                 var vol = tab.Rows[i]["StCode"];
                 vlist += "<option value=" +vol+ ">" +txt+ "</option>"; 
                }
                
                $("#lsbStations").append(vlist);
            }
            
            // 向右边添加值
            function addDateRight()
            {
               var left=document.getElementById("lsbStations");
               var right=document.getElementById("lsbStationsChoose");
               var arrayObject=new Array();
               if(left.length!=0)
               {
                    for( var i=0;i<left.length;i++)
                   {
                     if(left.options[i].selected)
                     { 
                     arrayObject[arrayObject.length]=[left.options[i].value,left.options[i].text]; // 把listbox的value,text放在二维数组中      
                      }
                    }
                    if(arrayObject.length==0)
                    {
                     alert("---请选择站点!--");
                     return;
                    }
                    var vlist = "";
                    for(var j=0;j<arrayObject.length;j++)
                    {
                    vlist += "<option value=" +arrayObject[j][0]+ ">" +arrayObject[j][1]+ "</option>"; 
                    }
                    $("#lsbStationsChoose").append(vlist); 
                    Delete(arrayObject,left);
                    return;
                }
                
               alert("---请选择站点查询条件!--");
               return;
             }
             
             //全部向右添加
             function addDateRightAll()
             { 
               var left=document.getElementById("lsbStations");
               var right=document.getElementById("lsbStationsChoose");
               var arrayObject=new Array();
               if(left.length!=0)
               {
                    for( var i=0;i<left.length;i++)
                    {
                     arrayObject[arrayObject.length]=[left.options[i].value,left.options[i].text]; // 把listbox的value,text放在二维数组中         
                    }
                    if(arrayObject.length==0){
                     alert("---请选择站点!--");
                     return;
                     }
                    var vlist = "";
                    for(var j=0;j<arrayObject.length;j++)
                    {
                    vlist += "<option value=" +arrayObject[j][0]+ ">" +arrayObject[j][1]+ "</option>"; 
                    }
                    $("#lsbStationsChoose").append(vlist); 
                    Delete(arrayObject,left);
                    return;
               }
                
               alert("---请选择站点查询条件!--");
               return;
             }
             
            //向左边添加
             function addDateLeft()
            {
                var left=document.getElementById("lsbStations");
                var right=document.getElementById("lsbStationsChoose");
                var arrayObject=new Array();
                if(right.length!=0)
                {
                     for( var i=0;i<right.length;i++)
                    {
                      if(right.options[i].selected)
                       { 
                       arrayObject[arrayObject.length]=[right.options[i].value,right.options[i].text]; // 把listbox的value,text放在二维数组中      
                       }
                    }
                    
                    var vlist = "";
                    for(var j=0;j<arrayObject.length;j++)
                    {
                    vlist += "<option value=" +arrayObject[j][0]+ ">" +arrayObject[j][1]+ "</option>"; 
                    }
                    $("#lsbStations").append(vlist);  
                    Delete(arrayObject,right);
                    return;
                }
                
                alert("---请添加站点!--");
                return;
             }
             
             //全部向左添加
             function addDateLeftAll()
             {
                var left=document.getElementById("lsbStations");
                var right=document.getElementById("lsbStationsChoose");
                var arrayObject=new Array();
                if(right.length!=0)
                {
                   for( var i=0;i<right.length;i++)
                    {
                       arrayObject[arrayObject.length]=[right.options[i].value,right.options[i].text]; // 把listbox的value,text放在二维数组中      
                    }
                    var vlist = "";
                    for(var j=0;j<arrayObject.length;j++)
                    {
                    vlist += "<option value=" +arrayObject[j][0]+ ">" +arrayObject[j][1]+ "</option>"; 
                     }
                   $("#lsbStations").append(vlist);  
                   Delete(arrayObject,right);
                   return;
                }
                
                alert("---请添加站点!--");
                return;
              }
             
            //清空记录 
           function Delete(arrayObject,temp)
           {
                for(var k=0;k<arrayObject.length;k++)
                {
                      for( var i=0;i<temp.length;i++)
                      {
                            if(temp.options[i].text==arrayObject[k][1])
                             {
                             temp.remove(i);           
                             }
                       }
                 }
           }
           
           //站点添加确定
           function addDate()
            {
                window.parent.dialogArguments.document.getElementById("txtStations").value="";
                var right=document.getElementById("lsbStationsChoose");
                var strChoose="";
                 if(right.length!=0)
                 {
                     var arrayObject=new Array();
                     for( var i=0;i<right.length;i++)
                     {
                     arrayObject[arrayObject.length]=[right.options[i].value,right.options[i].text]; // 把listbox的value,text放在二维数组中      
                     }
                     
                     for(var j=0;j<arrayObject.length;j++)
                     {
                     strChoose=strChoose+"'"+arrayObject[j][0]+"'"+",";
                     }
                      
                     var hdd = window.parent.dialogArguments.document.getElementById("hddSelectedChn");
                     hdd.value=strChoose.substring(0,strChoose.length-1);
                     window.parent.dialogArguments.document.getElementById("txtStations").value="站点已选,请查询!";
                     window.close();
                     return;
                 }
                 
                alert("---请添加站点!--");
                return;
            }
        </script>
      

  9.   

    查询后怎么和list集合结合到一起绑定呀,我的查询怎么都实现不了
      

  10.   

    很简单啊
    两个Listbox 或者DropdownList 进行添加、移除、排序的例子<%@ Page Language="C#" EnableEventValidation="false" %>
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     <script runat="server">
     
      protected void Button1_Click(object sender, EventArgs e)
       {
         Response.Write("<li>s1 = " + Request.Form[s1.UniqueID]);
         Response.Write("<li>s2 = " + Request.Form[s2.UniqueID]);
       }
     </script>
     <html xmlns="http://www.w3.org/1999/xhtml">
     <head id="Head1" runat="server">
       <title></title>
       <script type="text/javascript">
         var bak = null;
         function setData() {
           ss1 = document.getElementById("<%=s1.ClientID %>");
           ss2 = document.getElementById("<%=s2.ClientID %>");
           if (bak == null) {
             bak = [];
             for (i = 0; i < ss1.length; i++) bak.push(ss1[i].value);
           }       for (i = ss1.length - 1; i > -1; i--) {
             if (ss1[i].selected) {
               ss2.options[ss2.options.length] = new Option(ss1[i].value, ss1[i].value);
               ss1[i].parentNode.removeChild(ss1[i]);
             }
           }
           SortSelect(ss1);
           SortSelect(ss2);
         }     function removeData() {
           ss1 = document.getElementById("<%=s1.ClientID %>");
           ss2 = document.getElementById("<%=s2.ClientID %>");
           for (i = ss2.length - 1; i > -1; i--) {
             if (ss2[i].selected) {
               ss1.options[ss1.options.length] = new Option(ss2[i].value, ss2[i].value);
               ss2[i].parentNode.removeChild(ss2[i]);
             }
           }
           SortSelect(ss1);
           SortSelect(ss2);
         }     function SortSelect(ss) {
           var tt = [];
           for (i = 0; i < bak.length; i++) {
             for (j = 0; j < ss.length; j++) {
               if (ss[j].value == bak[i]) tt.push(bak[i]);
             }
           }
           ss.length = 0;
           for (i = 0; i < tt.length; i++) {
             ss.options[ss.options.length] = new Option(tt[i], tt[i]);
           }
         }
       </script>
     </head>
     <body>
       <form runat="server" id="form1">
       <table>
         <tr>
           <td>
             <asp:ListBox ID="s1" runat="server" SelectionMode="Multiple" Rows="6">
               <asp:ListItem>A</asp:ListItem>
               <asp:ListItem>B</asp:ListItem>
               <asp:ListItem>C</asp:ListItem>
               <asp:ListItem>D</asp:ListItem>
             </asp:ListBox>
           </td>
           <td>
             <input onclick="setData()" type="button" value="->"/>
             <br />
             <input onclick="removeData()" type="button" value="<-" />
           </td>
           <td>
             <asp:ListBox ID="s2" runat="server" SelectionMode="Multiple" Rows="6"></asp:ListBox>
           </td>
         </tr>
       </table>
       <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="得到选中的" />
       </form>
     </body>
     </html>