【2017-06-06】Ajax完整结构、三级联动的制作
一、Ajax完整结构
$.ajax({
url:"Main.ashx",
data:{},
dataType:"json",
type:"post",
async:false, //异步功能,默认是true,改为false就把异步关闭了
success:function(msg){
},
error:function(){ //服务端路径错误,服务端出错,服务端没有返回规定的json格式数据都会走error
},
beforeSend:function(){ //在发送之前执行这里的内容,可以限制用户重复提交请求。
$("#btn1").attr("disabled","disabled");
$("btn1").val("加载中...");
},
complete:function(){ //在ajax返回数据后回调,不管返回的数据是否正确都会回调
$("#btn1").removeAttr("disabled");
$("btn1").val("加载数据");
}
});
二、三级联动的制作
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<script src="js/jquery-1.7.1.min.js"></script>
<style type="text/css">
.states {
width:100px;
height:30px; }
</style>
</head>
<body>
<select class="states" id="province"></select>
<select class="states" id="city"></select>
<select class="states" id="county"></select>
</body>
</html>
<script type="text/javascript"> statesload(""); //加载数据的方法:
function statesload(a) {
if (a == "")
{
//加载省
$.ajax({
url: "Area.ashx",
data: { "pcode": "" },
type: "post",
dataType: "json",
success: function (msg) {
//先把<select></select>中的选项清空
$("#province").empty();
for (var i in msg)
{
var str="<option value='"+msg[i].areacode+"' >"+msg[i].areaname+"</option>"
$("#province").append(str);
}
//在加载完省以后再加载市
statesload("");
},
beforeSend: function () {
$("#province").append("<option value='null'>加载中...</option>");
},
complete: function () { }
});
}
if (a == "")
{
//加载市
$.ajax({
url: "Area.ashx",
data: { "pcode": $("#province").val() },
type: "post",
dataType: "json",
success: function (msg) {
$("#city").empty();
for (var i in msg) {
var str = "<option value=\"" + msg[i].areacode + "\" >" + msg[i].areaname + "</option>"
$("#city").append(str);
}
//加载完市以后再加载区县
statesload("");
},
beforeSend: function () {
$("#city").empty();
$("#city").append("<option value='null'>加载中...</option>");
},
complete: function () { }
}); }
if (a == "")
{
//加载区县
$.ajax({
url: "Area.ashx",
data: { "pcode": $("#city").val() },
type: "post",
dataType: "json",
success: function (msg) { $("#county").empty();
for (var i in msg) {
var str = "<option value=\"" + msg[i].areacode + "\" >" + msg[i].areaname + "</option>"
$("#county").append(str);
}
},
beforeSend: function () { $("#county").empty();
$("#county").append("<option value='null'>加载中...</option>"); }
});
}
} $("#province").change(function () {
statesload("");
}); $("#city").change(function () {
statesload("");
}); </script>
三级联动界面和Jquery
<%@ WebHandler Language="C#" Class="Area" %> using System;
using System.Web;
using System.Collections.Generic;
using System.Linq;
using System.Text; public class Area : IHttpHandler
{ public void ProcessRequest(HttpContext context)
{
//先睡上2秒再执行,模拟一下网速卡。
System.Threading.Thread.Sleep();
string id = context.Request["pcode"];
StringBuilder str = new StringBuilder();
int count=; str.Append("["); using (Data0216DataClassesDataContext con = new Data0216DataClassesDataContext())
{
List<ChinaStates> clist = con.ChinaStates.Where(r => r.ParentAreaCode == id).ToList(); foreach (ChinaStates c in clist)
{
if (count > ) str.Append(",");
str.Append("{\"areaname\":\"" + c.AreaName + "\",\"areacode\":\"" + c.AreaCode + "\"}");
count++;
}
} str.Append("]");
context.Response.Write(str);
context.Response.End(); } public bool IsReusable
{
get
{
return false;
}
} }
一般处理程序
【2017-06-06】Ajax完整结构、三级联动的制作的更多相关文章
- Ajax完整结构和删除
1.ajax完整结构 注意:(1)最后一个没有"," (2)ajax对网速要求高,最好有各种提示和使用按钮(可使其失效,防止重复加载) $.ajax({ url: "aj ...
- 第117天:Ajax实现省市区三级联动
Ajax实现省市区三级联动 思路: (1)首先获取省份信息 (2)发起Ajax请求,注意dataType中的T大写 (3)封装回调函数,回调函数success中用$.each循环每一条数据,动态创建o ...
- Ajax 案例之三级联动
每次在博客园网站写博客,格式真的好难搞,还望好心人告知更好的编辑工具.接下来进入正题:三级联动(其效果演示可看我的博文Ajax 学习总结 末尾). 数据表设计(Oracle) 新建数据表 Employ ...
- ajax完整结构
$.ajax({ url:"服务器", data:{"key":所传数据}, type:"post", dataType:"jso ...
- Ajax案例:三级联动查询员工的信息(三张表进行内连接)
需求分析: 通过数据库连接池,可以查询到数据库中员工的各种信息,通过点击下拉框的方式实现三级联动,即:没有点击city下拉框,后面两个下拉框中没有值,这样,点击city下拉框,department下拉 ...
- 基于ThinkPHP+AJAX的省市区三级联动
练习,就当练习. 省市区三级联动,样式如下图所示: 1,导入两个js文件并且导入数据库文件. 两个js文件分别是jquery-2.1.4.min.js和jquery-1.js,数据库文件,见附件. 2 ...
- 基于thinkphp和ajax的省市区三级联动
练习,就当练习. 省市区三级联动,样式如下图所示: 1,导入两个js文件并且导入数据库文件. 两个js文件分别是jquery-2.1.4.min.js和jquery-1.js,数据库文件,见附件. 2 ...
- AJAX省市县三级联动的实现
省市县数据 本例子中省市县数据保存在MySQL数据库中,部分数据截图如下: 从数据库中读取数据 导入需要的jar包 连接池配置文件 <c3p0-config> <!-- 默认配置,如 ...
- jquery+php+mysql实现Ajax省市县三级联动
1.第一步建立一个html页面的,放置省.市.县三个select选择框,代码如下: <!DOCTYPE html> <html> <head> <title& ...
随机推荐
- html 选择器之基础选择器
我把CSS选择器分开成三部分,第一部分是我们常用的部分,我把他叫做基本选择器:第二部分我把他称作是属性选择器,第三部分我把他称作伪类选择器 一.基础选择器 1. 通配符(*):选中所有的元素 2.元素 ...
- vue学习笔记-one
学习vue基础以来,看各种教程,练习,随手写写,有错误请大家指导, 目前vue已经升级到2.0的版本,学习也最好是2.0的版本开始. 先看vue的几个特点:1,简单,2,轻量,3,模块友好 4, 组件 ...
- centos7 下nfs的配置
td p { margin-bottom: 0cm } p { margin-bottom: 0.25cm; line-height: 120% } a:link { } 补充知识: RPC 主程序: ...
- Akka(1):Actor - 靠消息驱动的运算器
Akka是由各种角色和功能的Actor组成的,工作的主要原理是把一项大的计算任务分割成小环节,再按各环节的要求构建相应功能的Actor,然后把各环节的运算托付给相应的Actor去独立完成.Akka是个 ...
- SOA与基于CDIF的API的联动
几千年来,巴别塔的故事一直是人类面对的一个核心的困境.为了交流和沟通我们人类创造出语言,但沟通与交流仍然存在障碍……相同语言之间的沟通依语境的不同,尚且存在巨大的鸿沟,不同语言之间更是让人坐困愁城. ...
- Linux下Tomcat进行远程调试
1.更改tomcat远程调试端口(可以使用默认端口不更改) 打开目录下的catalina.sh文件,找到JPDA_ADDRESS=”8000”,8000代表远程调试端口,可以更改成其他没有被占用的端口 ...
- Spring Boot Dubbo applications.properties 配置清单
摘要: 原创出处 www.bysocket.com 「泥瓦匠BYSocket 」欢迎转载,保留摘要,谢谢! 『 与其纠结,不如行动学习.Innovate ,And out execute ! 』 本文 ...
- Scrapy 爬虫框架入门案例详解
欢迎大家关注腾讯云技术社区-博客园官方主页,我们将持续在博客园为大家推荐技术精品文章哦~ 作者:崔庆才 Scrapy入门 本篇会通过介绍一个简单的项目,走一遍Scrapy抓取流程,通过这个过程,可以对 ...
- C#集合之字典
字典表示一种复杂的数据结构,这种数据结构允许按照某个键来访问元素.字典也称为映射或散列表. 字典的主要特性是能根据键快速查找值.也可以自由添加和删除元素,这有点像List<T>(http: ...
- 如何设置自适应当前浏览器高度的div块
嗯 就是下面这样 <!DOCTYPE html> <head> <title>adaptive this page size</title> <s ...