JQuery发起ajax请求,并在页面动态的添加元素
页面html代码:
<li>
<div class="coll-tit"><span class="coll-icon"><i
class="sysfont coll-default"></i>全域旅游目的地</span>
</div>
<div class="coll-panel">
<div class="title-cont-two" style=" padding-top: 5px;padding-right: 5px;">
<p><span>共</span><span>计<span id="globalTravelCount">XX</span>个</span></p>
<p class="this-title-two title-block mt-10" id="globalTravel">
<a class="more" style="cursor: pointer;" id="globalTravelMore">查看更多<i class="sysfont"></i></a>
</p>
<div class="title-cont-two"></div>
</div>
</div>
</li>
发起ajax的js代码:
function loadMoreGlobalData() {
var $parent_region = $("#parent_region").val();
var $level = $("#level").val();
var globalTravelCount = parseInt($("#globalTravelCount").text());
var d = document.getElementById("globalTravel");
var p1 = d.getElementsByTagName('span');
var num = p1.length; // 得到目前已经显示的旅游目的地的数量
var currentPage = Math.floor(num / 10); // 得到当前页数
if (parseInt(num) >= globalTravelCount){ // 已经显示全部数据
$("#globalTravelMore").remove();
}else {
$.post("/globalTravel/more",{ parent_region:$parent_region,pageNum:currentPage,level:$level},
function(backData,textStatus,ajax){
if (textStatus == "success") {
//遍历
//返回json数组对象,对其遍历
$.each(backData, function (i, json) {
var $span = $("<span></span>");
var $a = $("<a></a>")
$a.attr('href','/data-check?parent_region='+json['region']+'&level='+json['level']);
$a.text(json['name'])
$span.append($a);
$("#globalTravelMore").before($span);
});
// $("#globalTravelMore").appendTo("#globalTravel")
var spanCount = document.getElementById("globalTravel").getElementsByTagName('span').length;
if (parseInt(spanCount) >= globalTravelCount) {
$("#globalTravelMore").remove();
}
}else {
alert("ajax读取信息失败了!")
}
},"json");
}
}
给html代码中的a标签(查看更多)添加点击事件的js代码:
<script>
$("#globalTravelMore").click(function () {
loadMoreGlobalData()
});
</script>
html页面示意图:
部分json数据展示:
[
{
region: 510726,
parent_region: 510700,
name: "北川羌族自治县",
level: 3,
exampleStatus: 1
},
{
region: 510727,
parent_region: 510700,
name: "平武县",
level: 3,
exampleStatus: 1
},
{
region: 510800,
parent_region: 510000,
name: "广元市",
level: 2,
exampleStatus: 1
},
{
region: 510822,
parent_region: 510800,
name: "青川县",
level: 3,
exampleStatus: 1
},
{
region: 510823,
parent_region: 510800,
name: "剑阁县",
level: 3,
exampleStatus: 1
},
{
region: 511100,
parent_region: 510000,
name: "乐山市",
level: 2,
exampleStatus: 1
}
]
JQuery发起ajax请求,并在页面动态的添加元素的更多相关文章
- jQuery实现Ajax请求时,页面显示等待的效果,超过指定请求时间后,进行其他操作
背景:有一个按钮,点击之后向后端程序发起Ajax请求,在请求结果没有返回之前,页面显示等待的效果,此时仍旧是异步请求,等待的效果在接收到结果后撤销. 需求:因为网络延迟或者后端程序的问题,在发起Aja ...
- 关于解决JQuery发送Ajax请求后,IE缓存数据不更新的问题
http://www.cnblogs.com/lys_013/archive/2013/08/07/3243435.html 今天在做ajax页面无刷新请求后台服务器数据的时候,IE下遭遇Ajax缓存 ...
- Sping MVC不使用任何注解处理(jQuery)Ajax请求(基于XML配置)
1. Spring Spring框架是一个轻量级的解决方案,是一个潜在的一站式商店,用于构建企业就绪的应用程序.Spring框架是一个Java平台,为开发Java应用程序提供全面的基础架构支持.Spr ...
- Struts2处理(jQuery)Ajax请求
1. Ajax Ajax(Asynchronous JavaScript and XML,异步JavaScript和XML)时一种创建交互式网页应用的网页开发技术,它并不是一项新的技术,其产生 ...
- JQuery发送ajax请求不能用数组作为参数
JQuery发送ajax请求不能用数组作为参数,否则会接收不到参数, 一.js代码如下: $('#delete-button').click(function(){ var select ...
- Angular和jQuery的ajax请求的差别
近期项目中使用angular,结果发现后台没法获取參数,所以,略微研究了一下两者在发送ajax时的差别. 注意angular和jquery的ajax请求是不同的. 在jquery中,官方文档解释con ...
- Jquery发送ajax请求以及datatype参数为text/JSON方式
Jquery发送ajax请求以及datatype参数为text/JSON方式 1.方式一:datatype:'text' 2.方式二:datatype:'JSON' 3.使用gson-1.5.jar包 ...
- 使用es6的then()方法封装jquery的ajax请求
使用场景: jsp页面中使用jquery的ajax请求比较频繁,以前vue框架的项目用过axios,所以就想着用then()封装一个公共请求的方法,这样每次请求就不用那么麻烦的写一大堆请求参数了. 示 ...
- Servlet处理(jQuery)Ajax请求
1. jQuery jQuery是一个JavaScript函数库,极大的简化了JavaScript编程,很容易学习.jQuery是目前最流行的开源js框架,并且提供了大量的扩展. 2. Aja ...
随机推荐
- object的equals方法与“==”的使用
官方文档是这么说的:
- zuul路由网关
zuul作为网关组件,主要用来管理api请求接口(统一对外暴露,负载均衡),身份认证,流量监控等.它是通过servlet来实现的,核心是一系列过滤器,可以在请求的发起跟相应返回阶段进行一系列的处理. ...
- 输入一个正整数n (1<n<=10),生成 1个 n*n 方阵 求出对角线之和
#define _CRT_SECURE_NO_WARNINGS #include <Windows.h> #include <stdio.h> #include <std ...
- static 和 final 和 static final
众所周知,static 是静态修饰关键字:可以修饰变量,程序块,方法,类. 1.修饰变量. 得知:如果static修饰的是变量,则JVM会将将其分配在内存堆上,该变量就与对象无关,所有对该变量的引用都 ...
- 单元测试-Junit-Mockit-PowerMock
0. Junit5 1. Junit4 //手动命令行测试 java -cp /usr1/junit:/usr1/cdncms/lib/* org.junit.runner.JUnitCore com ...
- IntelliJ IDEA实时模板变量
返回由当前方法返回的值的类型IntelliJ IDEA 实时模板中的模板变量允许用户输入.扩展模板后,变量将作为输入字段显示在编辑器中. IntelliJ IDEA 声明实时模板变量 模板中的变量以下 ...
- yield关键字的使用
yield的中文是什么意思呢? 在金山词霸上面的翻译是: vt.屈服,投降: 生产: 获利: 不再反对 vi.放弃,屈服: 生利: 退让,退位 n.产量,产额: 投资的收益: 屈服,击穿: 产品 个人 ...
- spring mvc 与Struts的认识
首先,纠正一个概念上的错误.ssh一般意义上是指 struts,spring framework以及hibernate.这三个框架作用是不一样的.hibernate主要是用于持久层,struts主要是 ...
- JSON 与 XML基本了解
简单了解JSON 和 XML ,以及他们的区别: JSON:是一种轻量级的数据交换格式,ECMA(欧洲计算机制造商协会)的一个子集: 优点:轻量级.占用宽带小.易于人的阅读和编写,便于js解析,支 ...
- js有限状态机
http://www.ruanyifeng.com/blog/2013/09/finite-state_machine_for_javascript.html 有限状态机(Finite-state m ...