jquery+json实现数据列表分页示例代码

该实例中,新闻数据列表未使用表格显示。下面将所有源码附上,其中用到jquery插件。


代码如下:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<c:set var="ctx" value="${pageContext.request.contextPath}" />
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta charset="UTF-8">
<title>Demo</title>

<script type="text/javascript" src="easyui/jquery-1.8.0.min.js"></script>

<script type="text/javascript" src="js/jquery.pagination.js"></script>

<link rel="stylesheet" href="js/pagination.css" type="text/css"></link>
<style type="text/css">
body {
width: 100%;
height: 100%;
margin: 0 auto;
padding: 0;
background-color: #FFF;
}

#hen {
background-color: #000;
height: 50px;
margin: 0px;
padding: 12px 20px 2px 20px;
border: #CCC double 1px;
}

.page {
width: 1024px;
margin: 20px auto;
padding: 0;
}

#fm {
margin: 0;
padding: 10px 30px;
}

.ftitle {
font-size: 14px;
font-weight: bold;
color: #666;
padding: 5px 0;
margin-bottom: 10px;
border-bottom: 1px solid #ccc;
}

.fitem {
margin-bottom: 5px;
}

.fitem label {
display: inline-block;
width: 80px;
}

A {
text-decoration: none;
}

A:link {
text-decoration: none;
color: #000;
}

A:visited {
color: #000;
text-decoration: none
}

A:active {
color: #000;;
text-decoration: none
}

A:hover {
text-decoration: none;
color: red;
}

.d_over {
background-color: #EFEFEF;
}

.d_out {
background-color: #FFFFFF;
}
</style>

<script type="text/javascript">
$(function(){//页面加载时,进行绑定

bind(0);
});

//点击分页时调用的函数,page_id为当前页的索引
function pageselectCallback(page_id, jq) {
bind(page_id);
}

function bind(pageIndex)
{
var temp="";
var total=0;
$.ajax({
type:"GET",
url:"sys/news.do?method=findByTopic&page="+(pageIndex+1),
async:false, ////作用是防止在ajax成功调用之前就调用$("#Pagination").pagination,这个时候数据个数还没有初始化
dataType:"json",
data:"pageIndex="+(pageIndex+1),//传递页面索引
//发送请求前,显示加载动画
beforeSend:function(){$("#divload").show();$("#datas #Pagination").hide()},
//请求完毕后,隐藏加载动画
complete:function(){$("#divload").hide();$("#datas #Pagination").show()},
success:function(data){
var json=data.rows;//json数据
total=data.total;//记录总数
$.each(json,function(index,item){
temp+="<div id='datas' classdivclass=\"d_out\" onmouseover=\"this.className='d_over'\" "+
"onmouseout=\"this.className='d_out'\" style='padding: 10px 15px 12px 15px;'>"+
"<strong> <a style='font-size: 20px;' href='"+item.URL+"' target='_blank'>"+
item.title+"</a></strong>"+
"<div style='font-size: 14px; font-famliy: 宋体; text-indent: 2em; margin-top: 5px;'>"+
item.summary+" }</div></div><hr />";
});
$("#datas").html(temp); //将创建的新行附加在DIV中
}

});

if(total!=0){
//调用分页函数,将分页插件绑定到id为Pagination的div上
$("#Pagination").pagination(total, { //recordCount在后台定义的一个公有变量,通过从数据库查询记录进行赋值,返回记录的总数
callback: pageselectCallback, //点击分页时,调用的回调函数
prev_text: '« 上一页', //显示上一页按钮的文本
next_text: '下一页 »', //显示下一页按钮的文本
items_per_page:10, //每页显示的项数
num_display_entries:6, //分页插件中间显示的按钮数目
current_page:pageIndex, //当前页索引
num_edge_entries:2 //分页插件左右两边显示的按钮数目

});
}

}
</script>
</head>
<body style="">
<!-- start header -->
<div id="hen">
<div style="color: #FFF;">
<h1 style="font-size: 20px;">
实时动态
</h1>
</div>
<div style="text-align: right;">
<a
style="color: #FFF; margin: 5px; text-decoration: none; cursor: pointer;"
href="index.jsp">返回首页</a>
</div>
</div>
<div class="page">
<div style="margin: 10px 0;"></div>
<div id="datas">
</div>
<div id="divload" style="text-align: center">
<img src="images/wait.gif" />
</div>
<div id="Pagination" class="digg"></div>
</div>
<br />
<br />
</body>
</html>

(0)

相关推荐

  • jquery自动将form表单封装成json的具体实现

    前端页面: 复制代码 代码如下: <span style="font-size:14px;"> <form action="" method="post" id="tf"> <table width="100%" cellspacing="0" cellpadding="0" border="0"> <tr

  • jQuery通过ajax请求php遍历json数组到table中的代码(推荐)

    html代码(test.html),js在html底部 具体代码如下所示: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>test-jquery-ajax-list</title> </head> <body> <div class="main">

  • 通过Jquery的Ajax方法读取将table转换为Json

    1. 创建Users表 复制代码 代码如下: create table Users ( UserId int identity(1,1) primary key, UserName varchar(20) ) insert into Users values('Bradley') insert into Users values('Dan') 复制代码 代码如下: create table Users ( UserId int identity(1,1) primary key, UserNam

  • 将JavaScript的jQuery库中表单转化为JSON对象的方法

    大家知道Jquery中有serialize方法,可以将表单序列化为一个"&"连接的字符串,但却没有提供序列化为Json的方法.不过,我们可以写一个插件实现.   我在网上看到有人用替换的方法,先用serialize序列化后,将&替换成":"."'": /** * 重置form表单 * @param formId form的id */ function resetQuery(formId){ var fid = "#&qu

  • jQuery实现form表单元素序列化为json对象的方法

    本文实例讲述了jQuery实现form表单元素序列化为json对象的方法.分享给大家供大家参考,具体如下: 这段代码序列化form表单元素为json对象: <!Doctype html> <html xmlns=http://www.w3.org/1999/xhtml> <head> <title>jQuery扩展--form序列化到json对象</title> <meta http-equiv=Content-Type content=&

  • jQuery+json实现动态创建复杂表格table的方法

    本文实例讲述了jQuery+json实现动态创建复杂表格table的方法.分享给大家供大家参考,具体如下: function SetSubTable() { var obj = jQuery.parseJSON($("#SubJsonStrValue").val()); window.ALLPARAMTERS = obj; var row_str = ""; var span_num = 1 for (var i = 0; i < obj.length; i+

  • jquery用ajax方式从后台获取json数据后如何将内容填充到下拉列表

    对于问题从后台获取json数据,将内容填充到下拉列表,代码非常简单,具体过程请看下面代码. 需求:url:链接     par:ID       sel:下拉列表选择器 //获取下拉列表 function BuildSelectBox(url, par, sel) { $(sel).empty(); $.getJSON(url, { id: par }, function (json, textStatus) { for (var i = json.length - 1; i >= 0; i--

  • jquery+json 通用三级联动下拉列表

    Author: shaoyun Email: shaoyun (at) yeah.net Date: 2010-03-10 02:03 Blog: http://shaoyun.cnblogs.com/ 用Jquery实现,原始代码只支持IE,这里我改了一下,我的代码里面有三个版本的实现 第一个是通过读取XML构建,支持IE/firefox,chrome不支持,有兴趣的可以将读取XML的部分改成AJAX的方式,这样chrome支持就不成问题 第二个是采用Json数据格式构建,是我的第二次尝试改进

  • jQuery实现在下拉列表选择时获取json数据的方法

    本文实例讲述了jQuery实现在下拉列表选择时获取json数据的方法.分享给大家供大家参考.具体如下: function populateDropDown() { $.getJSON('/getData.aspx',{Name:$('#parm').val()},function(data){ var select = $('#DDLControl'); var options = select.attr('options'); $('option', select).remove(); $.e

  • jQuery把表单元素变为json对象

    复制代码 代码如下: (function($){  $.fn.serializeObject=function(){             var inputs=$(this).find("input,textarea,select");             var o = {};             $.each(inputs,function(i,n){                 switch(n.nodeName.toUpperCase()){          

  • JQuery实现table行折叠效果以JSON做数据源

    复制代码 代码如下: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title>

  • jquery序列化form表单使用ajax提交后处理返回的json数据

    1.返回json字符串: 复制代码 代码如下: /** 将一个字符串输出到浏览器 */     protected void writeJson(String json) {         PrintWriter pw = null;         try {             servletResponse.setContentType("text/plain;charset=UTF-8");             pw = servletResponse.getWrit

随机推荐