js 实现二级联动
来源:互联网 发布:硕鼠mac 版下载 编辑:程序博客网 时间:2024/05/01 03:53
前台
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="SetDemo.aspx.cs" Inherits="SetDemo" %>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>无标题页</title>
</head>
<body style="text-align:center;">
<form id="form1" runat="server">
<table cellpadding=0 cellspacing=0 border=0>
<tr><td align=left width=100%>
<asp:DropDownList ID="ddlDepartMent" runat="server" >
</asp:DropDownList>
<asp:DropDownList ID="ddlEquipment" runat="server">
</asp:DropDownList>
</td></tr>
</table>
</body>
<script language="javascript" type="text/javascript">
document.body.onload=function()
{
document.getElementById("ddlEquipment").options[0]=new Option("请先选择","0");
}
function send_request()
{
//XmlHttpRequest并不是一个标准的产物,而是微软最初提出并得到很多浏览器支持的对象,因此其创建方法也是因浏览器而异的
//创建XmlHttpRequest对象
http_request=false;
if(window.XmlHttpRequest)
{
//非IE浏览器
http_request=new XmlHttpRequest();
}
else if(window.ActiveXObject)
{
//微软IE浏览器
try
{
//较新版本的IE浏览器
http_request=new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
http_request=new ActiveXObject("Mircosoft.XMLHTTP");
}
catch(e)
{}
}
}
else
{
window.alert("你的浏览器版本已经严重过时,请升级后早做操作!");
return false;
}
//readyState属性表示XMLHTTP的请求的当前状态,它等于4时表示请求已完成。
//onreadystatechange表示XMLHttpRequest对象中readyState改变时触发这个事件。
http_request.onreadystatechange=Getcity;
//创建htpp请求
//open方法表示打开一个URL连接
http_request.open("get","GetCity.ashx?ProvinceType="+document.getElementById('ddlDepartMent').value+"&PSectionCode="+document.getElementById('txtPse').value,true);
//发送上面创建的http请求
http_request.send(null);
}
function Getcity()
{
if(http_request.readyState==4)//请求完成,发送成功
{
//status属性表示HTTP请求的返回状态码,因为XMLHTTP也是请求的一个网页,所以它的含义和传统网页相同,如:200表示正常返回;404表示找不到网页;500表示服务器内部错误。
if(http_request.status==200)//交易成功
{
//在请求正常完成后,responseText表示以文本形式返回请求页面的内容
if(http_request.responseText!="")
{
//new Array(7),可以把7改成一个尽可能大的值,不如说选项中最大的值
var myarr=new Array(500);var ResponseText=http_request.responseText;var pos=ResponseText.indexOf(";");var i=0;
while(pos!=-1)
{
var myText=ResponseText.substring(0,pos);
if(myText!="")
{
myarr[i]=myText;
i++;
}
ResponseText=ResponseText.substr(pos+1);
pos=ResponseText.indexOf(";");
continue;
}
for(var n=0;n<i;n++)
{
var value1=myarr[n].substring(0,myarr[n].indexOf("_"));
var txt1=myarr[n].substr(myarr[n].indexOf("_")+1);
document.getElementById("ddlEquipment").options[n]=new Option(txt1,value1);
document.getElementById("ddlEquipment").length=i;
}
}
else
{
document.getElementById("ddlEquipment").options[0]=new Option("请先选择","0");
document.getElementById("ddlEquipment").length=1;
}
}
}
}
</script>
</html>
后台:
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Text;
public partial class SetDemo : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//省份
ddlDepartMent.Items.Clear();
ddlDepartMent.Items.Add(new ListItem("请先选择", "0"));
ddlDepartMent.Items.Add(new ListItem("湖北省", "HUB"));
ddlDepartMent.Items.Add(new ListItem("河南省", "HEN"));
this.ddlDepartMent.Attributes.Add("onchange", "send_request()");
}
}
}
新建一般处理程序:
WebHandler Language="C#" Class="GetCity" %>
using System;
using System.Web;
using System.Data.SqlClient;
public class GetCity : IHttpHandler {
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
string CityResult = "";
string strsql = "Select CityName,Id from InfoCity Where PType='"+type+"'";
string type = context.Request.QueryString["ProvinceType"].ToString();
sqlconnection con=new sqlconnection();
con.open();
SqlCommand com=new sqlcommand(con,strsql);
SqlDataReader reader = com.ExecuteReader();
while (reader.Read())
{
CityResult += reader[1] +"_"+ reader[0] + ";";
}
context.Response.Write(CityResult);
reader.Close();
}
public bool IsReusable
{
get
{
return false;
}
}
- js 实现二级联动
- js实现二级联动
- JS实现二级联动
- js实现二级联动
- js实现省市二级联动
- js二级联动的实现
- js 实现 二级联动菜单
- js实现二级下拉联动
- js实现二级联动菜单
- js实现注册、二级联动
- JS方式实现省市二级联动
- jsp+js实现的二级联动菜单
- jsp+js实现的二级联动菜单
- JS+html 实现select二级联动菜单
- 关于js二级联动的实现
- 二级联动下拉列表JS+html实现
- js实现省市选择二级联动
- 二级联动下拉列表JS+html实现
- C#读写文本文件的范例
- 解决VS2008不能TRACE UNICODE汉字的方法
- 谈谈领域模型--贫血还是充血?
- AX 演示:使用单元测试框架测试类
- 权限系统基本分析
- js 实现二级联动
- ppk on javascript 第3章 浏览器
- Invoke或者BeginInvoke的使用
- 把迅雷设为不是默认下载工具
- curl函数具体参数详解
- 移动应用开发,希望广交好友!
- 基于MFC多文档多视图结构的OGRE指北针程序
- org.apache.jasper.JasperException: Unable to compile class for JSP
- com.microsoft.sqlserver.jdbc.SQLServerException: 该语句没有返回结果集