本帖最后由 renchaorenhao 于 2009-11-11 11:29:03 编辑

解决方案 »

  1.   

    选取组名的是否为dropdownlist
    其它两个为listbox,一个为可选,另一个为已选。用两个按纽来添加,删除已选的??
      

  2.   

    是这样的话就好办了,在dropdownlist的selectchanged事件里面,绑定第一个可选的listBox;
    然后用js添加、删除人员;给段代码给你参考:  <script language="javascript" type="text/javascript">
          function list_add()
        {
            var n=0;    //记录有多少用户已经存在
    var ok;     //判断是否已经存在
    var l_list=document.getElementById("havePerson");
    var r_list=document.getElementById("SelectedPerson");
    var r_list_n=r_list.options.length;

    for (var i=0;i<l_list.options.length;i++)
    {
    var e=l_list.options[i];
    if (e.selected)
    {
    ok=0;   
    for (var j=0;j<r_list_n;j++)
    {
    if (e.value==r_list.options[j].value)
    {
    ok=1;
    n=n+1;
    break;
    }
    }
    if (ok==0)
    {
    o=document.createElement("option");
    o.text=e.text;
    o.value=e.value;
    r_list.add(o);
    }
    e.selected=false;
    }
    }
    if (n!=0)
    alert("有"+n+"个用户已经存在。");
        }
        
        function list_dell()
        {
            var r_list=document.getElementById("SelectedPerson");
            for (var i=0;i<r_list.options.length;i++)
    {
    var e=r_list.options[i]
    if (e.selected)
    {
    r_list.remove(i);
    i--;
    }
    }
        }
    </script><tr> <td class="toptd4" style="height: 30px" colspan="3">
      所属代表团<asp:DropDownList ID="ddl2" runat="server" AutoPostBack="True" OnSelectedIndexChanged="ddl2_SelectedIndexChanged">
                    </asp:DropDownList></td>
    </tr>
    <tr>
      <td style=" height:30px; width:45%; vertical-align:middle; text-align:center;">可选人员
              </td>
              <td></td>
               <td style=" height:30px;width:45%;  vertical-align:middle;text-align:center;">已选人员
              </td>
    </tr>
    <tr>
      <td style=" height:30px; width:45%; vertical-align:middle; text-align:center;" class="td4"><select name="havePerson" id="havePerson" multiple="true" style="width:100%;height:200px;" runat="server"></select>
              </td>
              <td style="vertical-align:middle; text-align:center;"><input type="button" value=">>" class="input" style="height:25px;" onclick="javascript:list_add();" /><br /><br />
              <input type="button" value="<<" class="input" style="height:25px;" onclick="javascript:list_dell();" /></td>
               <td style=" height:30px;width:45%;  vertical-align:middle;text-align:center;"><select name="SelectedPerson" id="SelectedPerson" multiple="true" style="width:100%;height:200px;" runat="server"></select>
              </td>
    </tr>
     protected void ddl2_SelectedIndexChanged(object sender, EventArgs e)
        {
    if (ddl2.SelectedValue.ToString() == "0")
                {
                    sql = "select ID,xm from dbglview where jcID='" + ddl1.SelectedValue.Trim() + "' order by xm desc";
                }
                else
                {
                    sql = "select ID,xm from dbglview where dbtID='" + ddl2.SelectedValue.Trim() + "' order by xm desc";
                }
                DataSet ds = conn.getBinding(sql, "t1");
                havePerson.DataSource = ds.Tables["t1"].DefaultView;
                havePerson.DataTextField = ds.Tables[0].Columns["xm"].ToString();
                havePerson.DataValueField = ds.Tables[0].Columns["ID"].ToString();
                havePerson.DataBind();
    }
      

  3.   

    LS真强的,没看到图就知道LZ想要的是什么的
      

  4.   

    该功能就像163邮箱  点击收件人后弹出个div 。  可以在里面选取组名(朋友,亲戚,同事),这是个DropDownList
     选取朋友后朋友栏里面的所有人填充到下面一个控件里
      

  5.   

    那就对了,我给的那段代码就是那样的功能,返回已选人到别的控件的js代码如下:function return_users()
        {
            var r_list=document.getElementById("SelectedPerson");
            var r_list_text="";
            var r_list_value="";
            
            for (var i=0;i<r_list.options.length;i++)
            {
                r_list_text=r_list_text+r_list.options[i].text+",";
                r_list_value=r_list_value+r_list.options[i].value+",";
            }
            
            if (r_list_text.length>0)
            {
                r_list_text=r_list_text.substr(0,r_list_text.length-1);
                r_list_value=r_list_value.substr(0,r_list_value.length-1);
            }
            
            document.getElementById("hdry").value=r_list_text;        document.getElementById("hdryid").value=r_list_value;
            divadduser.style.display ='none';//隐藏选人层
        }