时间:2021-07-01 10:21:17 帮助过:23人阅读
在线测试例子:http://vazumi.net.s1.kingidc.net/example/combobox.aspx 效果截图: 后台数据库是sql2k,一共一张表,3级联动是通过匹配code来搞 前台代码: %@ Page Language=C# AutoEventWireup=true CodeBehind=combobox.aspx.cs Inherits=test.example.combo
在线测试例子:
http://vazumi.net.s1.kingidc.net/example/combobox.aspx
效果截图:
后台数据库是sql2k,一共一张表,3级联动是通过匹配code来搞
前台代码:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="combobox.aspx.cs" Inherits="test.example.combobox" %>
using System; using System.Collections; using System.Data; using System.Linq; using System.Web; using System.Web.Services; using System.Web.Services.Protocols; using Newtonsoft.Json; using Newtonsoft.Json.Converters; using System.Data.Sql; using System.Data.SqlClient; using System.Configuration; namespace test.service { ////// $codebehindclassname$ 的摘要说明 /// [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] public class DataHandler : IHttpHandler { HttpContext Context; string json = ""; public void ProcessRequest(HttpContext context) { Context = context; context.Response.ContentType = "text/plain"; LoadDataToJSON(); context.Response.Write(json); context.Response.End(); } string GetQueryString(string name) { return Context.Request.Params[name]; } string View { get { return Context.Request.QueryString["View"]; } } void LoadDataToJSON() { switch (View) //这里么写写sql语句,或者调存储过程 { case "expstate": GetNormalData("select id=min(code),text=state from city(nolock) group by state order by min(code)"); break; case "expcity": GetNormalData("select id=code,text=city from city(nolock) where left(code,2)='"+ GetQueryString("stateid").Substring(0,2)+ "' and right(code,2)='00' and right(code,4)<>'0000'"); break; case "expsubcity": GetNormalData("select id=code,text=city from city(nolock) where left(code,4)='" + GetQueryString("cityid").Substring(0,4) +"' and right(code,2)<>'00'"); break; } } void GetNormalData(string SQL) //SQL查询,返回json字符串,这个方法是普通的datatable转json { SqlConnection Conn = new SqlConnection(ConfigurationManager.ConnectionStrings["Conn"].ToString()); SqlDataAdapter DA = new SqlDataAdapter(SQL, Conn); Conn.Open(); DataSet DS = new DataSet(); DA.Fill(DS, "c0"); Conn.Close(); string rs = JsonConvert.SerializeObject(DS.Tables["c0"], new DataTableConverter()); json = rs; }