1/1页1 跳转到查看:407
发新话题 回复该主题

使用Ajax实现DropDownList和ListBox的联动以及两个ListBox之间数据的移动

使用Ajax实现DropDownList和ListBox的联动以及两个ListBox之间数据的移动

这里使用到了两张表:部门表和员工表 SQL脚本如下:NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[Emp]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
drop table [dbo].[Emp]NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
GONÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
CREATE TABLE [dbo].[Emp] (NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
[EmpID] [int] IDENTITY (1, 1) NOT NULL ,NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
[EmpName] [varchar] (20) COLLATE Chinese_PRC_CI_AS NULL ,NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
[Age] [int] NULL ,NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
[Dept] [int] NULL ,NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
[DelFlag] [bit] NULLNÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
) ON [PRIMARY]NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
GONÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[Department]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
drop table [dbo].[Department]NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
GONÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
CREATE TABLE [dbo].[Department] (NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
[DeptID] [int] IDENTITY (1, 1) NOT NULL ,NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
[Name] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULLNÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
) ON [PRIMARY]NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
GONÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
  前台代码:NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<HTML>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<HEAD>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<title>ListBoxToListBox</title>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<meta name="GENERATOR" C>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<meta name="CODE_LANGUAGE" C>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<meta name="vs_defaultClientScript" c>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<link href="../CSS/BasicLayout.css" rel="stylesheet" type="text/css">NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<meta name="vs_targetSchema" c>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<style type="text/css"> .fsize { FONT-SIZE: 10pt } </style>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
</HEAD>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<body MS_POSITI>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<script language="javascript">NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
function BindListEmp()NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
var DeptID=document.getElementById("ddlDept").value;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
var obj=AjaxMethod.GetEmpByDeptID(DeptID);NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
if(obj.value!=null)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
document.all("listEmployees").length=0;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
var ds=obj.value;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
if(ds != null && typeof(ds) == "object" && ds.Tables != null)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
for(var i=0; i<ds.Tables[0].Rows.length; i++)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
     {NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
     var name=ds.Tables[0].Rows[i].EmpName;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
       var id=ds.Tables[0].Rows[i].EmpID;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
       //alert(name);NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
       //alert(id);NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
       document.all("listEmployees").options.add(new Option(name,id));NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
     }NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
elseNÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
elseNÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
</script>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<script language="javascript">NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
function GetData()NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
listNewEmp = eval("document.FrmListBox.listNewEmp");NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
document.getElementById("txtEmpID").value="";NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
for(i=0;i<listNewEmp.length;i++)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
document.FrmListBox.txtEmpID.value+=listNewEmp.options[i].value+",";NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
function AddItem(ControlName)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
Control = null;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
Control=eval("document.FrmListBox.listNewEmp");NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
var x=0;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
var i=0;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
var y=0;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
listEmployees=eval("document.FrmListBox.listEmployees");NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
listNewEmp=eval("document.FrmListBox.listNewEmp");NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
var j=listEmployees.length;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
for(i=0;i<j;i++)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
if(listEmployees.options[i].selected==true)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
//alert(Control.length);NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
if(Control.length==0)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
Control.add(new Option(listEmployees[i].text,listEmployees.options[i].value));NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
listNewEmp=eval("document.FrmListBox.listNewEmp");NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
continue;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
elseNÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
for(x=0;x<listNewEmp.length;x++)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
if(listEmployees.options[i].value==listNewEmp.options[x].value)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
y++;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
if(y==0)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
Control.add(new Option(listEmployees[i].text,listEmployees.options[i].value));NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
listNewEmp=eval("document.FrmListBox.listNewEmp");NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
function RemoveItem(ControlName)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
Control = null;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
Control=eval("document.FrmListBox.listNewEmp");NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
var j=Control.length;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
if(j==0) return;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
for(j;j>0;j--)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
if(Control.options[j-1].selected==true)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
Control.remove(j-1);NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
</script>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<form id="FrmListBox" method="post" runat="server">NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<table align="center" border="1" style="BORDER-COLLAPSE: collapse" borderColor="#ccccc"NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
width="80%" class="fSize">NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<TR>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<TD style="WIDTH: 191px" align="right" width="191" height="30">公司部门:</TD>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<TD height="30"><asp:dropdownlist id="ddlDept" runat="server" Width="112px"></asp:dropdownlist></TD>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
</TR>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<TR>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<TD style="WIDTH: 191px" align="right" width="191" height="30">项目成员:</TD>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<TD height="30">NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<TABLE id="Table3" cellSpacing="0" cellPadding="0" width="100%" border="0">NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<TR align="center">NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<TD style="WIDTH: 139px">NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<asp:listbox id="listEmployees" runat="server" Width="141" Height="160" Selecti></asp:listbox></TD>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<TD style="WIDTH: 33px"><INPUT class="buttoncss" style="WIDTH: 48px; HEIGHT: 24px" NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
type="button" value=">>>>" name="btnReceSendToRight"><BR>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<INPUT class="buttoncss" style="WIDTH: 48px; HEIGHT: 24px" NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
type="button" value="<<<<" name="btnReceSendToLeft">NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
</TD>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<TD align="left">NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<asp:listbox id="listNewEmp" runat="server" Width="141" Height="160" Selecti></asp:listbox> NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
</TD>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
</TR>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
</TABLE>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
</TD>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
</TR>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<tr>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<td height="30" align="right">存储listNew控件中所得到的值:</td>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<td>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<asp:TextBox id="txtEmpID" runat="server"></asp:TextBox></td>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
</tr>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<TR>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<TD align="center" colSpan="2" height="35"> NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
<asp:button id="btnSubmit" runat="server" Width="64" Text="确定" CssClass="redButtonCss" Height="24"></asp:button>          NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
</TD>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
</TR>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
</table>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
</TD></TR></TABLE>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
</form>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
</body>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
</HTML>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
追随理想和美人而生活!

TOP

 

回复: 使用Ajax实现DropDownList和ListBox的联动以及两个ListBox之间数据的移动

后台代码:NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
using System;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
using System.Collections;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
using System.ComponentModel;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
using System.Data;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
using System.Drawing;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
using System.Web;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
using System.Web.SessionState;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
using System.Web.UI;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
using System.Web.UI.WebControls;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
using System.Web.UI.HtmlControls;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
using System.Data.SqlClient;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
using Ajax;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
namespace NetTest.ListBoxTestNÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
/// <summary>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
/// ListBoxToListBox 的摘要说明。NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
/// </summary>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
public class ListBoxToListBox : System.Web.UI.PageNÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
protected System.Web.UI.WebControls.DropDownList ddlDept;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
protected System.Web.UI.WebControls.Button btnSubmit;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
protected System.Web.UI.WebControls.ListBox listEmployees;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
protected System.Web.UI.WebControls.ListBox listNewEmp;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
protected System.Web.UI.WebControls.TextBox txtEmpID;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
private string strConn=System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"].ToString();NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
private void Page_Load(object sender, System.EventArgs e)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
Ajax.Utility.RegisterTypeForAjax(typeof(NetTest.ListBoxTest.AjaxMethod));NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
if(!IsPostBack)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
GetDepartment();NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
GetEmployees();NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
btnSubmit.Attributes.Add("onclick","GetData();");NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
#region Web 窗体设计器生成的代码NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
override protected void OnInit(EventArgs e)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
//NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
//NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
InitializeComponent();NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
base.OnInit(e);NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
/// <summary>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
/// 设计器支持所需的方法 - 不要使用代码编辑器修改NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
/// 此方法的内容。NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
/// </summary>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
private void InitializeComponent()NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
this.btnSubmit.Click += new System.EventHandler(this.btnSubmit_Click);NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
this.Load += new System.EventHandler(this.Page_Load);NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
#endregionNÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
#region 得到部门NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
private void GetDepartment()NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
SqlConnection Conn=new SqlConnection(strConn);NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
SqlCommand Cmd=new SqlCommand("Select * from Department",Conn);NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
SqlDataAdapter da=new SqlDataAdapter();NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
da.SelectCommand=Cmd;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
DataSet ds=new DataSet();NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
Conn.Open();NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
da.Fill(ds);NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
Conn.Close();NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
ddlDept.DataSource=ds.Tables[0].DefaultView;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
ddlDept.DataTextField="Name";NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
ddlDept.DataValueField="DeptID";NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
ddlDept.DataBind();NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
ddlDept.Attributes.Add("onChange","BindListEmp()");NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
#endregionNÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
#region 得到所有的员工NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
private void GetEmployees()NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
SqlConnection Conn=new SqlConnection(strConn);NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
SqlCommand Cmd=new SqlCommand("Select * from Emp",Conn);NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
SqlDataAdapter da=new SqlDataAdapter();NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
da.SelectCommand=Cmd;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
DataSet ds=new DataSet();NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
Conn.Open();NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
da.Fill(ds);NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
Conn.Close();NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
listEmployees.DataSource=ds.Tables[0].DefaultView;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
listEmployees.DataTextField="EmpName";NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
listEmployees.DataValueField="EmpID";NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
listEmployees.DataBind();NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
#endregionNÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
private void btnSubmit_Click(object sender, System.EventArgs e)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
Response.Write(txtEmpID.Text);NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
追随理想和美人而生活!

TOP

 

回复: 使用Ajax实现DropDownList和ListBox的联动以及两个ListBox之间数据的移动

我想大家都知道使用AJAX技术,都是在javaScript中调用一个类里的方法,因此AjaxMothod中的方法如下NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
using System;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
using System.Data.SqlClient;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
using System.Data;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
namespace NetTest.ListBoxTestNÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
/// <summary>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
/// AjaxTest 的摘要说明。NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
/// </summary>NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
public class AjaxMethodNÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
private string strConn=System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"].ToString();NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
public AjaxMethod()NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
//NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
// TODO: 在此处添加构造函数逻辑NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
//NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
#region 根据部门编号得到部门员工NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
[Ajax.AjaxMethod]NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
public DataSet GetEmpByDeptID(string DeptID)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
tryNÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
int IntDeptID=int.Parse(DeptID);NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
SqlConnection Conn=new SqlConnection(strConn);NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
SqlCommand Cmd=new SqlCommand("Select * from Emp where Dept="+IntDeptID,Conn);NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
SqlDataAdapter da=new SqlDataAdapter();NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
da.SelectCommand=Cmd;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
DataSet ds=new DataSet();NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
Conn.Open();NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
da.Fill(ds);NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
Conn.Close();NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
return ds;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
catch(Exception ex)NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
{NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
string str=ex.Message;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
return null;NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
#endregionNÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
}NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
  注意一下关于两个ListBox之间所使用到的JavaScript代码和<form>标记的id有关,因为一般人生成一个页面之后,都不会去修改<form>的,所以特别提醒一下。NÈRsSQ.ßforum.entlib.net.cnšÌ³;½é€%;
追随理想和美人而生活!

TOP

 
1/1页1 跳转到
发表新主题 回复该主题