HTML代码:<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>无标题页</title> <script language="javascript" type="text/javascript" src="jquery-1.4.2.js"></script> <%if (false)
{ %> <script type="text/javascript" src="jquery-1.4.2-vsdoc.js"></script> <%} %> <script type="text/javascript">
$.ajaxSetup({ async: false });
var randomnum = Math.random(); $(document).ready(function() {
$("#ddl1").append("<option value='-1' selected='selected'>请选择...</option>");
$.getJSON("loadClass.ashx?num=" + randomnum, { "ddlId": 0 }, function(data) { for (var i = 0; i < data.length; i++) {
$("#ddl1").append($("<option></option>").val(data[i].ID).html(data[i].Cname));
}; $("#ddl1").change(function() { GetItem($(this).val(), this); }); });
}); function GetItem(parentId, obj) { $.getJSON("loadClass.ashx?num=" + randomnum, { "ddlId": parentId }, function(data) { $(obj).nextAll(".ddl").remove(); if (data != null) {
$("<select>", {
"class": "ddl",
change: function() {
GetItem($(this).val(), this);
}
}).appendTo($("#myDiv")); $($(".ddl")[$(".ddl").length - 1]).append("<option value='-1' selected='selected'>请选择...</option>");
for (var i = 0; i < data.length; i++) {
$($(".ddl")[$(".ddl").length - 1]).append($("<option></option>").val(data[i].ID).html(data[i].Cname));
};
}
}); } function GetDropDownListValue() {
var ddlValue;
var ddlCount = $(".ddl").length;
for (var i = ddlCount - 1; i >= 0; i--) {
if (i != 0) {
if ($($(".ddl")[i]).val() != -1) {
ddlValue = $($(".ddl")[i]).val();
break;
}
} else {
if ($($(".ddl")[i]).val() == -1) {
alert("请先选择一个选项");
return;
} else {
ddlValue = $($(".ddl")[i]).val();
break;
}
}
}
alert(ddlValue);
} </script></head>
<body>
<form id="form1" runat="server">
<div id="myDiv">
<select id="ddl1" class="ddl">
</select>
</div>
<input type="button" value="取值" onclick="GetDropDownListValue();" />
</form>
</body>
</html>
loadClass.ashx 一般处理程序代码:
<%@ WebHandler Language="C#" Class="loadClass" %>using System;
using System.Web;using System.Data;
using System.Text;
using System.Data.SqlClient;public class loadClass : IHttpHandler
{ public void ProcessRequest(HttpContext context)
{
int strId = Convert.ToInt32(context.Request.QueryString["ddlId"]);
string strSQL = "select * from QuestionType where QuTypeFatherId=" + strId + " order by QuTypeId asc ";
SqlConnection con = new SqlConnection(@"data source=.;initial catalog=MyTestDataBase;user id=sa;password=19831016");
SqlDataAdapter adp = new SqlDataAdapter(strSQL, con);
DataTable dt = new DataTable();
con.Open();
adp.Fill(dt);
con.Close(); StringBuilder strClass = new StringBuilder();
if (dt.Rows.Count != 0)
{
strClass.Append("[");
for (int i = 0; i < dt.Rows.Count; i++)
{
strClass.Append("{");
strClass.Append("\"ID\":\"" + dt.Rows[i]["QuTypeId"].ToString() + "\",");
strClass.Append("\"Cname\":\"" + dt.Rows[i]["QuTypeName"].ToString() + "\""); if (i != dt.Rows.Count - 1)
{
strClass.Append("},");
}
}
strClass.Append("}");
strClass.Append("]");
}
else
{
strClass = strClass.Append("");
}
context.Response.ContentType = "application/json";
context.Response.ContentEncoding = Encoding.UTF8;
context.Response.Write(strClass.ToString());
context.Response.End(); } public bool IsReusable
{
get
{
return false;
}
}}
数据库表结构
create database MyTestDataBase
gouse MyTestDataBase
goif exists(select * from sysobjects where name = 'QuestionType')
drop table QuestionType
gocreate table QuestionType
(
QuTypeId int primary key identity(1, 1),
QuTypeFatherId int not null,
QuTypeName varchar(50) unique not null,
QuTypeIsDel bit default(0) not null
)
goinsert into QuestionType values(0, '生活',0)
insert into QuestionType values(0, '电脑',0)
insert into QuestionType values(1, '服装',0)
insert into QuestionType values(1, '美容',0)
insert into QuestionType values(1, '美食',0)
insert into QuestionType values(1, '购房',0)
insert into QuestionType values(2, '装机',0)
insert into QuestionType values(2, '硬件',0)
insert into QuestionType values(2, '软件',0)
insert into QuestionType values(2, '互联网',0)
insert into QuestionType values(8, 'CPU',0)
insert into QuestionType values(8, '光驱',0)
insert into QuestionType values(8, '显卡',0)
insert into QuestionType values(8, '内存',0)
insert into QuestionType values(13, 'NVIDIA',0)
insert into QuestionType values(13, 'ATI',0)
insert into QuestionType values(13, '集成显卡',0)
insert into QuestionType values(15, 'geForce',0)
insert into QuestionType values(15, 'MX系列',0)
insert into QuestionType values(18, '6series',0)
insert into QuestionType values(18, '7series',0)
insert into QuestionType values(18, '8series',0)
insert into QuestionType values(18, '9series',0)
insert into QuestionType values(22, '8300',0)
insert into QuestionType values(22, '8300GT',0)
insert into QuestionType values(22, '8500',0)
insert into QuestionType values(22, '8500GT',0)
insert into QuestionType values(22, '8600',0)
insert into QuestionType values(22, '8600GT',0)
insert into QuestionType values(22, '8800',0)
insert into QuestionType values(22, '8800GT',0)
insert into QuestionType values(16, 'HD5450',0)
insert into QuestionType values(16, 'HD5770',0)
insert into QuestionType values(16, 'HD5970',0)
insert into QuestionType values(16, 'HD5670',0)
insert into QuestionType values(16, 'HD5570',0)
insert into QuestionType values(16, 'HD5870',0)select * from QuestionType
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>无标题页</title> <script language="javascript" type="text/javascript" src="jquery-1.4.2.js"></script> <%if (false)
{ %> <script type="text/javascript" src="jquery-1.4.2-vsdoc.js"></script> <%} %> <script type="text/javascript">
$.ajaxSetup({ async: false });
var randomnum = Math.random(); $(document).ready(function() {
$("#ddl1").append("<option value='-1' selected='selected'>请选择...</option>");
$.getJSON("loadClass.ashx?num=" + randomnum, { "ddlId": 0 }, function(data) { for (var i = 0; i < data.length; i++) {
$("#ddl1").append($("<option></option>").val(data[i].ID).html(data[i].Cname));
}; $("#ddl1").change(function() { GetItem($(this).val(), this); }); });
}); function GetItem(parentId, obj) { $.getJSON("loadClass.ashx?num=" + randomnum, { "ddlId": parentId }, function(data) { $(obj).nextAll(".ddl").remove(); if (data != null) {
$("<select>", {
"class": "ddl",
change: function() {
GetItem($(this).val(), this);
}
}).appendTo($("#myDiv")); $($(".ddl")[$(".ddl").length - 1]).append("<option value='-1' selected='selected'>请选择...</option>");
for (var i = 0; i < data.length; i++) {
$($(".ddl")[$(".ddl").length - 1]).append($("<option></option>").val(data[i].ID).html(data[i].Cname));
};
}
}); } function GetDropDownListValue() {
var ddlValue;
var ddlCount = $(".ddl").length;
for (var i = ddlCount - 1; i >= 0; i--) {
if (i != 0) {
if ($($(".ddl")[i]).val() != -1) {
ddlValue = $($(".ddl")[i]).val();
break;
}
} else {
if ($($(".ddl")[i]).val() == -1) {
alert("请先选择一个选项");
return;
} else {
ddlValue = $($(".ddl")[i]).val();
break;
}
}
}
alert(ddlValue);
} </script></head>
<body>
<form id="form1" runat="server">
<div id="myDiv">
<select id="ddl1" class="ddl">
</select>
</div>
<input type="button" value="取值" onclick="GetDropDownListValue();" />
</form>
</body>
</html>
loadClass.ashx 一般处理程序代码:
<%@ WebHandler Language="C#" Class="loadClass" %>using System;
using System.Web;using System.Data;
using System.Text;
using System.Data.SqlClient;public class loadClass : IHttpHandler
{ public void ProcessRequest(HttpContext context)
{
int strId = Convert.ToInt32(context.Request.QueryString["ddlId"]);
string strSQL = "select * from QuestionType where QuTypeFatherId=" + strId + " order by QuTypeId asc ";
SqlConnection con = new SqlConnection(@"data source=.;initial catalog=MyTestDataBase;user id=sa;password=19831016");
SqlDataAdapter adp = new SqlDataAdapter(strSQL, con);
DataTable dt = new DataTable();
con.Open();
adp.Fill(dt);
con.Close(); StringBuilder strClass = new StringBuilder();
if (dt.Rows.Count != 0)
{
strClass.Append("[");
for (int i = 0; i < dt.Rows.Count; i++)
{
strClass.Append("{");
strClass.Append("\"ID\":\"" + dt.Rows[i]["QuTypeId"].ToString() + "\",");
strClass.Append("\"Cname\":\"" + dt.Rows[i]["QuTypeName"].ToString() + "\""); if (i != dt.Rows.Count - 1)
{
strClass.Append("},");
}
}
strClass.Append("}");
strClass.Append("]");
}
else
{
strClass = strClass.Append("");
}
context.Response.ContentType = "application/json";
context.Response.ContentEncoding = Encoding.UTF8;
context.Response.Write(strClass.ToString());
context.Response.End(); } public bool IsReusable
{
get
{
return false;
}
}}
数据库表结构
create database MyTestDataBase
gouse MyTestDataBase
goif exists(select * from sysobjects where name = 'QuestionType')
drop table QuestionType
gocreate table QuestionType
(
QuTypeId int primary key identity(1, 1),
QuTypeFatherId int not null,
QuTypeName varchar(50) unique not null,
QuTypeIsDel bit default(0) not null
)
goinsert into QuestionType values(0, '生活',0)
insert into QuestionType values(0, '电脑',0)
insert into QuestionType values(1, '服装',0)
insert into QuestionType values(1, '美容',0)
insert into QuestionType values(1, '美食',0)
insert into QuestionType values(1, '购房',0)
insert into QuestionType values(2, '装机',0)
insert into QuestionType values(2, '硬件',0)
insert into QuestionType values(2, '软件',0)
insert into QuestionType values(2, '互联网',0)
insert into QuestionType values(8, 'CPU',0)
insert into QuestionType values(8, '光驱',0)
insert into QuestionType values(8, '显卡',0)
insert into QuestionType values(8, '内存',0)
insert into QuestionType values(13, 'NVIDIA',0)
insert into QuestionType values(13, 'ATI',0)
insert into QuestionType values(13, '集成显卡',0)
insert into QuestionType values(15, 'geForce',0)
insert into QuestionType values(15, 'MX系列',0)
insert into QuestionType values(18, '6series',0)
insert into QuestionType values(18, '7series',0)
insert into QuestionType values(18, '8series',0)
insert into QuestionType values(18, '9series',0)
insert into QuestionType values(22, '8300',0)
insert into QuestionType values(22, '8300GT',0)
insert into QuestionType values(22, '8500',0)
insert into QuestionType values(22, '8500GT',0)
insert into QuestionType values(22, '8600',0)
insert into QuestionType values(22, '8600GT',0)
insert into QuestionType values(22, '8800',0)
insert into QuestionType values(22, '8800GT',0)
insert into QuestionType values(16, 'HD5450',0)
insert into QuestionType values(16, 'HD5770',0)
insert into QuestionType values(16, 'HD5970',0)
insert into QuestionType values(16, 'HD5670',0)
insert into QuestionType values(16, 'HD5570',0)
insert into QuestionType values(16, 'HD5870',0)select * from QuestionType
解决方案 »
- VS2010下的RDLC怎么样才能实现套打
- xml文件里的注释有可以注释成段的功能吗?
- pictureBox.image.save方法怎样用
- GDI得TextRenderer.DrawText 方法画的文字超出指定矩形的边界
- 关于xml文件爱你解析统计问题!
- 如何获得当前页面中的验证码图片
- 一帖还未平息,一帖又来侵袭,导出Excel问题
- 急!!!在线等待回复:C#怎么写来实现:禁止/启用计算机本地用户
- 在 WEB中控制服务器DNS,IIS,NT帐户,该如何实现??要用API吗?怎么用?谢谢~~~
- 在服务器端从数据库中取得数据后以 XML封包形式传给客户端,客户端得到封包后怎样将他和DataSet连接起来,即将XML封包数据附给 DataSet?
- timercallback问题请教
- 在线等!!问一个地址传值问题
一般的ajax不需要同步,楼主的可能需要绑定时必须有数据,所以要求同步
谢谢!
如果为false,HttpApplication在处理完request后会被回收,那样就不占用内存。如果为true,IHttpHandler实例将会被保存在内存中,HttpApplication在处理接下来的请求时,会使用缓存的IHttpHandler实例。建议将其设置为false。(个人看法)
不好意思~~这个没研究过~~
但是应该也需要用到handler一般处理程序~~
你可以参考下引用drawing包之类的在页面动态生成验证码并且加干扰线的例子~网上有很多~