是这样的话就好办了,在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+"个用户已经存在。"); }
那就对了,我给的那段代码就是那样的功能,返回已选人到别的控件的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); }
其它两个为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();
}
选取朋友后朋友栏里面的所有人填充到下面一个控件里
{
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';//隐藏选人层
}