js写的评论分页(还不错)_Javascript教程-查字典教程网
js写的评论分页(还不错)
js写的评论分页(还不错)
发布时间:2016-12-30 来源:查字典编辑
摘要:复制代码代码如下:微客服body{text-align:center;margin:0;padding:0;color:#500f60;ba...

复制代码 代码如下:

<%@ page language="java" contentType="text/html; charset=utf-8"

pageEncoding="utf-8"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme() + "://"

+ request.getServerName() + ":" + request.getServerPort()

+ path + "/";

%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" name="viewport">

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>微客服</title>

<style type="text/css">

body{

text-align: center;

margin: 0;

padding: 0;

color: #500f60;

background: url("../images/bj_4.jpg");

background-repeat:no-repeat;

background-attachment: scroll;

background-size:100% 100%;

overflow-x: hidden;

}

li{

list-style-type: none;

}

a:link{

list-style-type: none;

}

img{

width: 100%;

}

#static{

margin: 0 auto;

text-align: left;

width: 90%;

margin-top: 20px;

}

.aa{

padding-left: 16px;

}

#bott{

border: 3px #590303 solid;

border-radius: 6px 6px 6px 6px;

-moz-border-radius: 6px;

width: 90%;

margin-left: 5%;

}

.tex{

border-top: none;

border-bottom: none;

border-left: none;

border-right: none;

background: fixed;

}

</style>

</head>

<script type="text/javascript">

$(function() {

var row = 5;

//动态加评论信息

function loadCommentInfo(page) {

$("#page").text(page);

$.ajax({

type : "POST",

url : "<%=basePath%>findClickCommentByPage.action",

data: "page="+page+"&row="+row,

success : function(data) {

var list = data.list;

var row = "";

$("#comments").empty();

for ( var i = 0; i < list.length; i++) {

row = "<h3><span>"+list[i].time+"</span></h3>"+

"<h3>"+list[i].content+"</h3>";

if(list[i].repcontent!=null){

row+="<h3>回复:"+list[i].repcontent+"</h3>";

}

"<hr size="5px;" color="#f0f">";

$(row).appendTo($("#comments"));

}

$("#pagetag").val(page);

}

});

};

function getTotalContent() {

$.ajax({

type : "POST",

url : "<%=basePath%>getTotalNum.action",

success : function(data) {

$("#count").text(data.total);

if(parseInt(data.total)==0){

$("#page").text(0);

}

var pagenum = parseInt(data.total/row);

$("#totalpage").text(parseInt(data.total%row==0?pagenum:pagenum+1));

},

});

}

$("#submit").click(function(){

var content = $("#content").val();

if(content==""){

alert("内容不能为空!");

return;

}

$.post("<%=basePath%>addClickComment.action","content="+content,function(data){

if(data.success == true) {

alert("发表成功!");

$("#content").val("");

loadCommentInfo(parseInt($("#pagetag").val()));

getTotalContent();

}

});

});

$("#pre").click(function(){

var page = parseInt($("#pagetag").val());

if(page>1){

page--;

loadCommentInfo(page);

}

});

$("#next").click(function(){

var page = parseInt($("#pagetag").val());

if(page<parseInt($("#totalpage").text())){

page++;

loadCommentInfo(page);

}

});

window.onload = loadCommentInfo(1);

window.onload = getTotalContent();

});

</script>

<body>

<input type="hidden" id="pagetag" value="1">

<div id="static">

<div>

<img src="../pic/top4.jpg">

<a href="<%=basePath%>jsp/index.jsp"><img src="../pic/fan_2.png"></a>

</div>

<button id="pre">上一页</button>

<button id="next">下一页</button>

<p>第<span id="page"></span>/<span id="totalpage"></span>页</p>

<h1>评论(<span id="count"></span>)</h1>

<hr size="5px;" color="#590303">

<div id="comments">

</div>

<h2>发表评论</h2>

<h3>您的评论:</h3>

<div id="bott">

<textarea rows="7" cols="100%" id="content"></textarea>

</div>

<button id="submit">发表</button>

</div>

</body>

</html>

dao层

复制代码 代码如下:

package dfml.daoImpl;

import java.sql.SQLException;

import java.util.List;

import javax.annotation.Resource;

import org.hibernate.Criteria;

import org.hibernate.HibernateException;

import org.hibernate.Query;

import org.hibernate.Session;

import org.hibernate.criterion.Order;

import org.springframework.orm.hibernate3.HibernateCallback;

import org.springframework.orm.hibernate3.HibernateTemplate;

import org.springframework.stereotype.Component;

import dfml.dao.ClickCommentDao;

import dfml.pojo.ClickComment;

@Component

public class ClickCommentDaoImpl implements ClickCommentDao{

private HibernateTemplate hibernateTemplate;

@Resource

public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {

this.hibernateTemplate = hibernateTemplate;

}

//添加一条评论信息

@Override

public boolean addClickComment(ClickComment clickComment) {

boolean isSuccess = false;

try {

hibernateTemplate.save(clickComment);

isSuccess = true;

} catch (Exception e) {

isSuccess = false;

e.printStackTrace();

}

return isSuccess;

}

//分页查找评论信息

@SuppressWarnings("unchecked")

@Override

public List<ClickComment> findClickCommentByPage(final int page, final int row) {

List<ClickComment> list = this.hibernateTemplate

.executeFind(new HibernateCallback<Object>() {

@Override

public Object doInHibernate(Session session)

throws HibernateException, SQLException {

Criteria c = session.createCriteria(ClickComment.class);

c.setFirstResult((page - 1) * row);

c.setMaxResults(row);

c.addOrder(Order.desc("time"));

return c.list();

}

});

return list;

}

//得到评论的个数

@SuppressWarnings({ "unchecked", "rawtypes" })

@Override

public Long getClickCommentCount() {

final String hql = "select count(*) from ClickComment";

Long result = null;

result = (Long) hibernateTemplate.execute(new HibernateCallback() {

public Object doInHibernate(Session arg0)

throws HibernateException, SQLException {

Query query = arg0.createQuery(hql);

return query.uniqueResult();

}

});

return result;

}

//更新评论信息

@Override

public boolean updateClickComment(ClickComment clickComment) {

boolean isSuccess=false;

try {

hibernateTemplate.update(clickComment);

isSuccess=true;

} catch (Exception e) {

e.printStackTrace();

isSuccess=false;

}

return isSuccess;

}

//根据id查找评论信息

@Override

public ClickComment findClickCommentById(int id) {

return (ClickComment) hibernateTemplate.find("from ClickComment where id = ?",

id).get(0);

}

//删除评论信息

@Override

public boolean deleteClickComment(ClickComment clickComment) {

boolean isSuccess=false;

try {

hibernateTemplate.delete(clickComment);

isSuccess=true;

} catch (Exception e) {

e.printStackTrace();

isSuccess=false;

}

return isSuccess;

}

//查询所有的评论

@SuppressWarnings("unchecked")

@Override

public List<ClickComment> findAllClickComment() {

return hibernateTemplate.find("from ClickComment");

}

}

struts配置

复制代码 代码如下:

<package name="clickComment" extends="json-default" namespace="/">

<action name="addClickComment" method="addClickComment">

<result name="add" type="json">

<param name="root">map</param>

</result>

</action>

<action name="findClickCommentByPage" method="findClickCommentByPage">

<result name="findByPage" type="json">

<param name="root">map</param>

</result>

</action>

<action name="getTotalNum" method="getTotalNum">

<result name="total" type="json">

<param name="root">map</param>

</result>

</action>

<action name="updateClickComment" method="updateClickComment">

<result name="update" type="json">

<param name="root">map</param>

</result>

</action>

<action name="findAllClickComment" method="findAllClickComment">

<result name="list" type="json">

<param name="root">map</param>

</result>

</action>

<action name="deleteClickComment" method="deleteClickComment">

<result name="delete" type="json">

<param name="root">map</param>

</result>

</action>

action

复制代码 代码如下:

package dfml.action;

import java.sql.Date;

import java.text.SimpleDateFormat;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

import javax.annotation.Resource;

import org.springframework.context.annotation.Scope;

import org.springframework.stereotype.Component;

import com.opensymphony.xwork2.ActionSupport;

import dfml.dao.ClickCommentDao;

import dfml.pojo.Activity;

import dfml.pojo.ClickComment;

@Component("clickCommentAction")

@Scope("prototype")

public class ClickCommentAction extends ActionSupport{

private static final long serialVersionUID = 1L;

private ClickCommentDao clickCommentDao;

private Map<String, Object> map;

private String content;// 评论内容

private String repcontent;// 回复评论

private int page;

private int row;

private int rows;

private int id;

public void setId(int id) {

this.id = id;

}

public Map<String, Object> getMap() {

return map;

}

@Resource

public void setClickCommentDao(ClickCommentDao clickCommentDao) {

this.clickCommentDao = clickCommentDao;

}

public void setContent(String content) {

this.content = content;

}

public void setRepcontent(String repcontent) {

this.repcontent = repcontent;

}

public void setPage(int page) {

this.page = page;

}

public void setRow(int row) {

this.row = row;

}

public void setRows(int rows) {

this.rows = rows;

}

//添加评论 用于微信用户

public String addClickComment() {

boolean isSuccess = false;

map = new HashMap<String, Object>();

ClickComment clickComment = new ClickComment();

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

clickComment.setTime(format.format(new Date(System.currentTimeMillis())));

clickComment.setContent(content);

try {

isSuccess = clickCommentDao.addClickComment(clickComment);

} catch (Exception e) {

isSuccess = false;

e.printStackTrace();

}

map.put("success", isSuccess);

return "add";

}

//分页查找评论 用户微信用户

public String findClickCommentByPage() {

map = new HashMap<String, Object>();

map.put("list", clickCommentDao.findClickCommentByPage(page, row));

return "findByPage";

}

//查询评论条数 用于微信用户

public String getTotalNum(){

map = new HashMap<String, Object>();

map.put("total", clickCommentDao.getClickCommentCount());

return "total";

}

//回复评论 用于后台管理

public String updateClickComment(){

boolean isSuccess=false;

map=new HashMap<String, Object>();

ClickComment clickComment =clickCommentDao.findClickCommentById(id);

if(clickComment!=null){

clickComment.setRepcontent(repcontent);

isSuccess=clickCommentDao.updateClickComment(clickComment);

}

map.put("success", isSuccess);

return "update";

}

//查询所有评论 用于后台管理

public String findAllClickComment(){

map=new HashMap<String, Object>();

List<ClickComment> lists=clickCommentDao.findClickCommentByPage(page, rows);

List<ClickComment> listss=clickCommentDao.findAllClickComment();

map.put("rows", lists);

map.put("total", listss.size());

map.put("list", listss);

return "list";

}

//删除评论 用于后台管理

public String deleteClickComment(){

boolean isSuccess=false;

map=new HashMap<String, Object>();

ClickComment clickComment =clickCommentDao.findClickCommentById(id);

if(clickComment!=null){

isSuccess=clickCommentDao.deleteClickComment(clickComment);

}

map.put("success", isSuccess);

return "delete";

}

}

pojo

复制代码 代码如下:

package dfml.pojo;

import java.io.Serializable;

import javax.persistence.Entity;

import javax.persistence.GeneratedValue;

import javax.persistence.Id;

//评论表

@Entity

public class ClickComment implements Serializable{

private static final long serialVersionUID = 1L;

private Integer id;

private String time;// 评论时间

private String content;// 评论内容

private String name;// 评论人

private String repcontent;//回复评论

@Id

@GeneratedValue

public Integer getId() {

return id;

}

public void setId(Integer id) {

this.id = id;

}

public String getRepcontent() {

return repcontent;

}

public void setRepcontent(String repcontent) {

this.repcontent = repcontent;

}

public String getTime() {

return time;

}

public void setTime(String time) {

this.time = time;

}

public String getContent() {

return content;

}

public void setContent(String content) {

this.content = content;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

}

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新Javascript教程学习
    热门Javascript教程学习
    编程开发子分类