<?xml version="1.0"?> 
<configuration> 
<configSections> 
<sectionGroup type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"> 
<sectionGroup type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"> 
<section type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication"/> 
<sectionGroup type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"> 
<section type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="Everywhere" /> 
<section type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication" /> 
<section type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication" /> 
</sectionGroup> 
</sectionGroup> 
</sectionGroup> 
</configSections> 
<system.web> 
<customErrors defaultRedirect="" /> 
<trace mostRecent="true" pageOutput="true" /> 
<pages> 
<controls> 
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> 
</controls> 
</pages> 
<compilation> 
<assemblies> 
<add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" /> 
</assemblies> 
</compilation> 
<httpHandlers> 
<remove verb="*" path="*.asmx"/> 
<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> 
<add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> 
<add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false"/> 
</httpHandlers> 
<httpModules> 
<add type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> 
</httpModules> 
</system.web> 
<system.webServer> 
<validation validateIntegratedModeConfiguration="false"/> 
<modules> 
<add preCondition="integratedMode" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> 
</modules> 
<handlers> 
<remove /> 
<add verb="*" path="*.asmx" preCondition="integratedMode" 
type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> 
<add verb="*" path="*_AppService.axd" preCondition="integratedMode" 
type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> 
<add preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" /> 
</handlers> 
</system.webServer> 
</configuration> 
前台页面:
复制代码 代码如下:
 
<asp:ScriptManager runat="server" EnablePartialRendering="true"> 
</asp:ScriptManager> 
<div> 
<asp:UpdatePanel runat="server" UpdateMode="Conditional"> 
<ContentTemplate> 
<table cellpadding="0" cellspacing="2" > 
<tr> 
<td bgcolor="#EAEAEA" > 
请选择省/市/区: 
</td> 
<td bgcolor="#f7f7f7"> 
<asp:DropDownList runat="server" 
AutoPostBack="true" onselectedindexchanged="dpProvince_SelectedIndexChanged" /> 
<asp:DropDownList runat="server" AutoPostBack="true" 
onselectedindexchanged="dpCity_SelectedIndexChanged" /> 
<asp:DropDownList runat="server" AutoPostBack="false" 
/> 
</td> 
</tr> 
<tr> 
<td bgcolor="#EAEAEA" > 
</td> 
<td bgcolor="#f7f7f7"> 
<asp:UpdateProgress runat="server"> 
<ProgressTemplate> 
正在查询,请稍候……………………</ProgressTemplate> 
</asp:UpdateProgress> 
</td> 
</tr> 
</table> 
</ContentTemplate> 
<Triggers> 
<asp:AsyncPostBackTrigger ControlID="dpProvince" EventName="SelectedIndexChanged" /> 
<asp:AsyncPostBackTrigger ControlID="dpCity" EventName="SelectedIndexChanged" /> 
</Triggers> 
</asp:UpdatePanel> 
</div> 
Framework 4:与代码完全一样,只是无需在web.config中作配置。
如图:

二、基于JQuery1.4.1的Ajax框架,主要好处是与后续版本的asp.net完全集成。
基于ashx作一个 Request,主要代码:
复制代码 代码如下:
