一、现在做的项目里面要有两个DropDownList二级联动,比如说,我选择辽宁省,在第 二个DropDownList里例出辽宁省所有的市.
二、编辑用户的资料的时候,如果客户资料里的地址是辽宁省沈阳市,那么在第一 个DropDownList里辽宁省是被选择状态,地二个DropDownList沈阳市是被选择。我鼓捣半天了,Ajax实在是不熟练,求各位指点迷津啊!
二、编辑用户的资料的时候,如果客户资料里的地址是辽宁省沈阳市,那么在第一 个DropDownList里辽宁省是被选择状态,地二个DropDownList沈阳市是被选择。我鼓捣半天了,Ajax实在是不熟练,求各位指点迷津啊!
解决方案 »
- 类型转换问题 大虾进
- 向数据库批量添加数据,显示进度条
- Response.Write("<%=now()%>");
- 50分 求助:DIV层中的滚动条如何控制(急....................................)
- 配匹中文的正则表达式,有那位高手知道吗?
- 流言板
- 怎样才能在JAVA脚本里获得cookie或session里的值
- aspx页面怎样设置滚动条属性啊?
- 安全级别的问题Debugging is not supported under current trust level settings.
- 请问有关聊天室的问题
- 关于窗口的关闭
- 在asp.net中操作excel文件的问题?
你到博客园那里去看看,里面有个,不知道是不是你说的.
http://www.wujianrong.com/archives/2006/07/ajaxr.html
你看这两个都是不刷新的
http://www.google.cn/search?complete=1&hl=zh-CN&q=%E6%97%A0%E5%88%B7%E6%96%B02%E7%BA%A7%E8%81%94%E5%8A%A8&meta=
<head runat="server">
<title>散票收入添加</title>
<link href="../App_Themes/blue/style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<!--#include file="../inc/ActiveCalendar.js"-->
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1" runat="server" CssClass="officedoc" Font-Bold="True" Text="散票收入添加"></asp:Label>
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<br />
<asp:ValidationSummary ID="ValidationSummary1" runat="server" CssClass="officedoc"
ShowMessageBox="True" ShowSummary="False" />
<br />
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="tbDate"
CssClass="officedoc" Display="None" ErrorMessage="请输入日期"></asp:RequiredFieldValidator>
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="tbIncome"
CssClass="officedoc" Display="None" ErrorMessage="请输入收入金额"></asp:RequiredFieldValidator>
<asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" ControlToValidate="tbRate"
CssClass="officedoc" Display="None" ErrorMessage="请输入提成系数"></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ControlToValidate="tbIncome"
CssClass="officedoc" Display="None" ErrorMessage="您输入的收入金额格式有误,请重新输入" ValidationExpression="\d+(\.\d\d)?"></asp:RegularExpressionValidator>
<asp:RegularExpressionValidator ID="RegularExpressionValidator2" runat="server" ControlToValidate="tbRate"
CssClass="officedoc" Display="None" ErrorMessage="您输入的提成系数格式有误,请重新输入" ValidationExpression="\d+(\.\d(\d)?)?"></asp:RegularExpressionValidator><br />
<table border="0" class="ReformList officedoc">
<tr>
<td align="right" style="width: 75px">
日期:</td>
<td style="width: 100px">
<asp:TextBox ID="tbDate" runat="server" onclick="setday(this)" onmouseover="this.style.cursor='hand';" Width="100px"></asp:TextBox></td>
<td align="right" style="width: 74px">
</td>
<td style="width: 100px">
</td>
</tr>
<tr>
<td align="right" style="width: 75px; height: 16px">
驾驶员:</td>
<td colspan="3" style="height: 16px">
<asp:UpdatePanel runat="server" ID="upDriver">
<ContentTemplate>
<asp:DropDownList ID="ddlDept" runat="server" AutoPostBack="True" OnSelectedIndexChanged="ddlDept_SelectedIndexChanged">
</asp:DropDownList>
<asp:DropDownList ID="ddlTeam" runat="server" AutoPostBack="True" OnSelectedIndexChanged="ddlTeam_SelectedIndexChanged">
</asp:DropDownList>
<asp:DropDownList ID="ddlDriver" runat="server">
</asp:DropDownList>
</ContentTemplate>
</asp:UpdatePanel>
</td>
</tr>
<tr>
<td align="right" style="width: 75px">
收入金额:</td>
<td style="width: 100px">
<asp:TextBox ID="tbIncome" runat="server" Width="100px" AutoPostBack="True" OnTextChanged="tbRate_TextChanged"></asp:TextBox></td>
<td align="right" style="width: 74px">
提成系数:</td>
<td style="width: 100px">
<asp:TextBox ID="tbRate" runat="server" Width="50px" AutoPostBack="True" OnTextChanged="tbRate_TextChanged"></asp:TextBox>%</td>
</tr>
<tr>
<td align="right" style="width: 75px">
提成金额:</td>
<td style="width: 100px">
<asp:UpdatePanel runat="server" ID="upBonus" ChildrenAsTriggers="False" UpdateMode="Conditional">
<ContentTemplate>
<asp:TextBox ID="tbBonus" runat="server" Width="100px"></asp:TextBox>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="tbIncome" EventName="TextChanged" />
<asp:AsyncPostBackTrigger ControlID="tbRate" EventName="TextChanged" />
</Triggers>
</asp:UpdatePanel>
</td>
<td align="right" style="width: 74px">
</td>
<td style="width: 100px">
</td>
</tr>
</table>
</div>
<br />
<asp:Button ID="btnAdd" runat="server" CssClass="Button" Height="22px" Text="确认"
Width="60px" OnClick="btnAdd_Click" />
<asp:Button ID="btnBack" runat="server" CausesValidation="False" CssClass="Button"
Height="22px" Text="返回" Width="60px" PostBackUrl="~/Dep2Sheet/TicketIncomeList.aspx" />
</form>
</body>
</html>
* 模块名称: 散票收入添加模块
* 创建人: 叶明
* 创建日期: 2007-03-22
* 涉及数据表: Department,EmpNow_State,DepTeam,TicketIncome
* 最后修改人:
* 最后修改日期:
* 修改记录:
***************************************************/
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using Microsoft.Practices.EnterpriseLibrary.Data;public partial class Dep2Sheet_TicketIncomeAdd : SimpleCode
{
Database db = DatabaseFactory.CreateDatabase("TedaBusMIS"); protected override void OnInit(EventArgs e)
{
base.OnInit(e);
}
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
BindDeptList();
string deptID = GetCurrentUserDeptID();
ddlDept.SelectedIndex = ddlDept.Items.IndexOf(ddlDept.Items.FindByValue(deptID));
ddlDept.Enabled = false;
BindTeamList(deptID);
BindDriverList(ddlTeam.Items[0].Value);
tbDate.Text = DateTime.Now.ToShortDateString();
}
} #region 绑定部门下拉列表
/// <summary>
/// 绑定部门下拉列表
/// </summary>
private void BindDeptList()
{
string sql = "SELECT DISTINCT ID,DepName FROM Department";
IDataReader dr = db.ExecuteReader(CommandType.Text, sql);
ddlDept.DataSource = dr;
ddlDept.DataTextField = "DepName";
ddlDept.DataValueField = "ID";
ddlDept.DataBind();
}
#endregion #region 绑定队下拉列表
/// <summary>
/// 绑定队下拉列表
/// <param name="depID">部门ID</param>
/// </summary>
private void BindTeamList(string depID)
{
string sql = "SELECT DISTINCT ID,team FROM DepTeam WHERE depID = '" + depID + "'";
IDataReader dr = db.ExecuteReader(CommandType.Text, sql);
ddlTeam.DataSource = dr;
ddlTeam.DataTextField = "team";
ddlTeam.DataValueField = "ID";
ddlTeam.DataBind();
}
#endregion #region 绑定员工下拉列表
/// <summary>
/// 绑定员工下拉列表
/// </summary>
/// <param name="teamID">队ID</param>
/// <res>
/// 对于部门中存在队的情况,传入队ID
/// 对于部门中不存在队的情况,请传入空字符串
/// 下拉列表将按照部门下拉列表中的值进行绑定
/// </res>
private void BindDriverList(string teamID)
{
string sql = "";
if (teamID == string.Empty || teamID == "0") //对于部门中不存在分队的情况,按照所在部门绑定
{
sql = "SELECT EmpNo,EmpName FROM EmpNow_State WHERE EmpDep = '" + ddlDept.SelectedValue + "'";
}
else //对于部门中存在队的情况,按照队绑定
{
sql = "SELECT EmpNo,EmpName FROM EmpNow_State WHERE Emp_Team = '" + teamID + "'";
}
IDataReader dr = db.ExecuteReader(CommandType.Text, sql);
ddlDriver.DataSource = dr;
ddlDriver.DataTextField = "EmpName";
ddlDriver.DataValueField = "EmpNo";
ddlDriver.DataBind();
}
#endregion #region 处理部门下拉列表SelectedIndexChanged事件
protected void ddlDept_SelectedIndexChanged(object sender, EventArgs e)
{
ddlDriver.Items.Clear(); //清除驾驶员下拉列表
string sql = "SELECT COUNT(team) FROM DepTeam WHERE DepID = '" + ddlDept.SelectedValue + "'";
if (int.Parse(db.ExecuteScalar(CommandType.Text, sql).ToString()) > 0) //如果部门中存在队
{
BindTeamList(ddlDept.SelectedValue); //绑定队下拉列表
}
else
{
ddlTeam.Items.Clear(); //清除队下拉列表
BindDriverList(""); //跳过队,直接绑定驾驶员
}
}
#endregion #region 处理队下拉列表SelectedIndexChanged事件
protected void ddlTeam_SelectedIndexChanged(object sender, EventArgs e)
{
BindDriverList(ddlTeam.SelectedValue);
}
#endregion #region 获取当前用户部门ID
/// <summary>
/// 利用当前用户的登录名获取当前用户所在的部门编号
/// 涉及数据表:EmployeeBaseInfo
/// </summary>
/// <returns>当前用户所在的部门编号</returns>
private string GetCurrentUserDeptID()
{
//string result = "";
////获取当前登录的用户的员工编号
////P.S. 如果无法得到当前用户所在的部门,请在这里Response一下,很可能就是下面的变量没有得到
//string userName = ((SitePrincipal)Context.User).UserCardNum.ToString(); //if (userName != string.Empty)
//{
// string sql = "SELECT DepID FROM EmployeeBaseInfo WHERE EmployeeNo ='" + userName + "'";
// SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["TedabusMIS"].ToString());
// conn.Open();
// SqlCommand cmd = new SqlCommand(sql, conn);
// try
// {
// //因为只有一个字段,我用的是SqlCommand的ExecuteScalar方法
// result = cmd.ExecuteScalar().ToString();
// }
// catch
// {
// result = "";
// }
// finally
// {
// cmd.Dispose();
// conn.Close();
// conn.Dispose();
// }
//}
//return result;
return "16";
}
#endregion #region 在客户端弹出对话框
/// <summary>
/// 在客户端显示消息对话框
/// </summary>
/// <param name="message">对话框中的文字</param>
private void ShowMessageBox(string message)
{
Page.RegisterStartupScript("msg", "<script language='JavaScript'>alert('" + message + "');</Script>");
}
#endregion #region 保存散票收入
/// <summary>
/// 增加散票收入
/// </summary>
/// <returns>返回1,表示保存成功;返回0,表示保存失败</returns>
private int AddNewIncome()
{
string sql = "INSERT INTO TicketIncome (IncomeDate,DriverID,Income,BonusRate,Bonus,DeptID) "
+ "VALUES ('" + tbDate.Text + "','" + ddlDriver.SelectedValue
+ "'," + tbIncome.Text + "," + tbRate.Text + "," + tbBonus.Text + ",'" +ddlDept.SelectedValue + "')";
return db.ExecuteNonQuery(CommandType.Text, sql);
}
#endregion protected void btnAdd_Click(object sender, EventArgs e)
{
if (Page.IsValid)
{
if (AddNewIncome() > 0)
{
ShowMessageBox("保存成功");
}
else
{
ShowMessageBox("保存失败");
}
}
}
protected void tbRate_TextChanged(object sender, EventArgs e)
{
if(tbIncome.Text != string.Empty || tbRate.Text != string.Empty)
{
float result = float.Parse(tbIncome.Text) * (float.Parse(tbRate.Text) / 100);
tbBonus.Text = result.ToString();
}
}
}