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 ...
随机推荐
- g++ 出现 undefined reference to ......
g++ 出现 undefined reference to ...... 检查/usr/local/lib /usr/lib 发现已经存在相应的库文件 那么,问题可能出现在g++链接次序上,即先链接 ...
- ORACLE分页SQL
1,使用rownum SELECT * FROM ( SELECT A.*, ROWNUM RN FROM (SELECT * FROM TABLE_NAME) A ) 2,使用between SEL ...
- Day3下
少女[问题描述]你是能看到第一题的 friends呢.—— hja少女在图上开车, 她们希望把每条边分配给与其相连的点中一个并且每个点最多被分配一条边,问可能的方案数.[输入格式]第一行两个整数
- node.js的介绍
1.node.js的优点 性能高 开发效率高 应用范围广 2.安装 下载地址:http://nodejs.cn 下载git 3.框架选择 express(成熟),koa,Hapi
- css颜色 hsla 和line-gradient
h 表示色调 从0-360 s 饱和度 0 - 100% l 亮度 0 -100% a 透明度 0-1
- 一步步理解typedef
1.如何用C语言实现一个函数,传递两个整形数,返回两个数的和? #include<stdio.h> int add(int a,int b) { return a+b; } void ma ...
- Android 修改TabLayout底部导航条Indicator的长短
关于Tablayout,使用的应该很频繁了,但是底部导航条长短是固定死的,需要自己来改动长短,找了半天没找着方法,看了下官方建议,可以通过映射来修改自己想要的长短,其实也就几行代码的问题,看代码: p ...
- Android打包异常
Android在打包的时候,报错: 找不到类,或者打包之后运行找不到类,都可以在混淆文件中添加这个属性: -dontoptimize 通过测试,都可以解决. 来自为知笔记(Wiz)
- Assembly测试
using UnityEngine; using System.Collections; using System.Collections.Generic; using System.Reflecti ...
- SpringCloud的学习记录(6)
这一章节讲fegin的使用. 在我们生成的Demo项目上右键点击New->Module->spring Initializr, 然后next, 填写Group和Artifact等信息, 这 ...