700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > jQuery Ajax实现下拉框无刷新联动

jQuery Ajax实现下拉框无刷新联动

时间:2022-07-12 17:53:58

相关推荐

jQuery Ajax实现下拉框无刷新联动

HTML代码:

@{Layout = null;}@using DAL;@using System.Data;@{AreaDal areaDal = new AreaDal();string areaId = ViewBag.areaId;DataRow drArea = areaDal.GetArea(areaId);string countyId = drArea == null ? "-1" : drArea["countyId"].ToString();DataRow drCounty = areaDal.GetCounty(countyId);string cityId = drCounty == null ? "-1" : drCounty["cityId"].ToString();DataRow drCity = areaDal.GetCity(cityId);string provinceId = drCity == null ? "-1" : drCity["provinceId"].ToString();}<!DOCTYPE html><html><head><title>商圈选择</title><script type="text/javascript">//选中function select(selId, id, callback) {$("#" + selId).val(id);if (callback) callback();}//获取省列表function getProvinces(callback) {$.ajax({type: "POST",url: "@Url.Content("~/Backstage/Area/GetProvinces")",data: {},success: function (text) {$("#province").html(text);if (callback) callback();},error: function () {}});}//获取市列表function getCities(pid, callback) {$.ajax({type: "POST",url: "@Url.Content("~/Backstage/Area/GetCities")",data: { "provinceId": pid, },success: function (text) {$("#city").html(text);if (callback) callback();},error: function () {}});}//获取区县列表function getCounties(pid, callback) {$.ajax({type: "POST",url: "@Url.Content("~/Backstage/Area/GetCounties")",data: { "cityId": pid, },success: function (text) {$("#county").html(text);if (callback) callback();},error: function () {}});}//获取商圈列表function getAreas(pid, callback) {$.ajax({type: "POST",url: "@Url.Content("~/Backstage/Area/GetAreas")",data: { "countyId": pid, },success: function (text) {$("#area").html(text);if (callback) callback();},error: function () {}});}</script></head><body><select id="province"><option value="-1">==请选择==</option></select><select id="city"><option value="-1">==请选择==</option></select><select id="county"><option value="-1">==请选择==</option></select><select id="area"><option value="-1">==请选择==</option></select><script type="text/javascript">//选择省 $("#province").change(function () {var id = $(this).find("option:selected").val();getCities(id, function () {$("#city").change();});});//选择市 $("#city").change(function () {var id = $(this).find("option:selected").val();getCounties(id, function () {$("#county").change();});});//选择区县 $("#county").change(function () {var id = $(this).find("option:selected").val();getAreas(id, function () {$("#area").change();});});getProvinces(function () {select("province", '@provinceId', function () {getCities('@provinceId', function () {select("city", '@cityId', function () {getCounties('@cityId', function () {select("county", '@countyId', function () {getAreas('@countyId', function () {select("area", '@areaId');});});});});});});});</script></body></html>

View Code

Controller代码:

using System;using System.Collections.Generic;using System.Data;using System.Linq;using System.Text;using System.Web.Mvc;using DAL;namespace Controllers.Backstage{/// <summary>/// 行政区划/// </summary>public class AreaController : AdminBaseController{#region 构造函数及变量private SQLiteHelper.SQLiteHelper sqliteHelper;private AreaDal areaDal;public AreaController(){sqliteHelper = new SQLiteHelper.SQLiteHelper();areaDal = new AreaDal();}#endregion#region 行政区划商圈级联选择页面public ActionResult AreaSelect(){return PartialView();}#endregion#region 获取全部省public ActionResult GetProvinces(){DataTable dt = areaDal.GetProvincesAll();StringBuilder sbHtml = new StringBuilder();sbHtml.Append("<option value='-1'>==请选择==</option>");foreach (DataRow dr in dt.Rows){sbHtml.AppendFormat("<option value='{0}'>{1}</option>", dr["id"].ToString(), dr["name"].ToString());}return Content(sbHtml.ToString());}#endregion#region 根据省获取市public ActionResult GetCities(string provinceId){DataTable dt = areaDal.GetCities(provinceId);StringBuilder sbHtml = new StringBuilder();sbHtml.Append("<option value='-1'>==请选择==</option>");foreach (DataRow dr in dt.Rows){sbHtml.AppendFormat("<option value='{0}'>{1}</option>", dr["id"].ToString(), dr["name"].ToString());}return Content(sbHtml.ToString());}#endregion#region 根据市获取区县public ActionResult GetCounties(string cityId){DataTable dt = areaDal.GetCounties(cityId);StringBuilder sbHtml = new StringBuilder();sbHtml.Append("<option value='-1'>==请选择==</option>");foreach (DataRow dr in dt.Rows){sbHtml.AppendFormat("<option value='{0}'>{1}</option>", dr["id"].ToString(), dr["name"].ToString());}return Content(sbHtml.ToString());}#endregion#region 根据区县获取商圈public ActionResult GetAreas(string countyId){DataTable dt = areaDal.GetAreas(countyId);StringBuilder sbHtml = new StringBuilder();sbHtml.Append("<option value='-1'>==请选择==</option>");foreach (DataRow dr in dt.Rows){sbHtml.AppendFormat("<option value='{0}'>{1}</option>", dr["id"].ToString(), dr["name"].ToString());}return Content(sbHtml.ToString());}#endregion}}

View Code

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。