参考:首先有个模糊查询,然后把查询的结果都显示在左侧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=">>" onclick="btnaddallmname_Click" />
</td>
</tr>
<tr>
<td>
<asp:Button runat="server" ID="btnaddmname" CssClass="bt2" CausesValidation="false"
Text=">" onclick="btnaddmname_Click" />
</td>
</tr>
<tr>
<td>
<asp:Button runat="server" ID="btndeletemname" CssClass="bt2" CausesValidation="false"
Text="<" onclick="btndeletemname_Click" />
</td>
</tr>
<tr>
<td>
<asp:Button runat="server" ID="btndeleteallmname" CssClass="bt2" CausesValidation="false"
Text="<<" 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)
{ }
参考:,希望高手多多提意见,小弟绝对不利兮给分,谢谢。
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=">>" onclick="btnaddallmname_Click" />
</td>
</tr>
<tr>
<td>
<asp:Button runat="server" ID="btnaddmname" CssClass="bt2" CausesValidation="false"
Text=">" onclick="btnaddmname_Click" />
</td>
</tr>
<tr>
<td>
<asp:Button runat="server" ID="btndeletemname" CssClass="bt2" CausesValidation="false"
Text="<" onclick="btndeletemname_Click" />
</td>
</tr>
<tr>
<td>
<asp:Button runat="server" ID="btndeleteallmname" CssClass="bt2" CausesValidation="false"
Text="<<" 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)
{ }
参考:,希望高手多多提意见,小弟绝对不利兮给分,谢谢。
解决方案 »
- 12306的这个表是怎么实现表头固定,表体滚动效果的?
- 图片上传问题-~·········求救`急`急`急`急 在线等待
- asp.net与shtml共用静态的头和脚,用什么方法较好?
- 请问引用类库调试
- 同一頁面加載兩個相同的自定義控件--求可行辦法?
- ASP.NET 2.0里取得WEB上的网页,除了用XMLHTTP组件外,还有其它办法没?
- 请问怎样设置使得DataGrid的LinkButton按钮列不可用?
- 关于上传控件的验证
- 用datalist嵌套dataliset,VB语言如何显示两个表的内容
- 小妹在线等待,实现如下功能,点相应文章标题,打开相应新窗口,再点相应文章标题,打开相应新窗口
- oracle 分区有用过的进来看看。。。
- 总是出现错误未将对象引用设置到对象的实例~
{
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();
}应该可以给分了
添加和删除元素你按照这些来对两个list操作就行了
-------------------------------
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>
{
$("#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);
});
}
字符串拼接
把where条件拼接起来就是了
http://www.cnblogs.com/insus/articles/1652164.html
// 乡镇点击选择绑定相关站点
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>
两个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>