亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

js寫的評論分頁(還不錯)

2019-11-20 21:24:23
字體:
來源:轉載
供稿:網友
復制代碼 代碼如下:

<%@ 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 style=/"color: #000; font-size: 0.5em; padding-left: 70%;/">"+list[i].time+"</span></h3>"+
"<h3 style=/"padding-left: 12px;/">"+list[i].content+"</h3>";
if(list[i].repcontent!=null){
row+="<h3 style=/"padding-left: 12px; word-wrap: break-word; word-break: normal;/">回復:"+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 style="text-align: left; z-index: 999">
<img src="../pic/top4.jpg">
<a href="<%=basePath%>jsp/index.jsp"><img src="../pic/fan_2.png" style="width: 10%; margin-top: -25px;"></a>
</div>
<button style="background: #520202; border-top: none;border: 3px #520202 solid; border-radius: 2px 2px 2px 2px;-moz-border-radius: 6px; color: #FFEA00;" id="pre">上一頁</button>
<button style="background: #520202; border-top: none;border: 3px #520202 solid; border-radius: 2px 2px 2px 2px;-moz-border-radius: 6px;float: right; color: #FFEA00;" id="next">下一頁</button>
<p style="background: #520202; color: #FFEA00;">第<span id="page"></span>/<span id="totalpage"></span>頁</p>
<h1 class="aa">評論(<span id="count"></span>)</h1>
<hr size="5px;" color="#590303">
<div id="comments">
</div>
<h2 class="aa">發表評論</h2>
<h3 class="aa">您的評論:</h3>
<div id="bott">
<textarea rows="7" class="tex" cols="100%" id="content"></textarea>
</div>
<button style="margin-left:80%; border-top: none;border: 3px #520202 solid; border-radius: 6px 6px 6px 6px;-moz-border-radius: 6px; color: #FFEA00; background: #520202;" 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" class="clickCommentAction">
<result name="add" type="json">
<param name="root">map</param>
</result>
</action>
<action name="findClickCommentByPage" method="findClickCommentByPage" class="clickCommentAction">
<result name="findByPage" type="json">
<param name="root">map</param>
</result>
</action>
<action name="getTotalNum" method="getTotalNum" class="clickCommentAction">
<result name="total" type="json">
<param name="root">map</param>
</result>
</action>
<action name="updateClickComment" method="updateClickComment" class="clickCommentAction">
<result name="update" type="json">
<param name="root">map</param>
</result>
</action>
<action name="findAllClickComment" method="findAllClickComment" class="clickCommentAction">
<result name="list" type="json">
<param name="root">map</param>
</result>
</action>
<action name="deleteClickComment" method="deleteClickComment" class="clickCommentAction">
<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;
}
}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩av资源在线播放| 国产在线播放91| 国产精品扒开腿做爽爽爽视频| 欧美一级淫片aaaaaaa视频| 136fldh精品导航福利| 欧美日韩免费在线观看| 国产精品亚洲视频在线观看| 国产精品嫩草影院久久久| 欧美午夜美女看片| 欧美国产精品人人做人人爱| 国产精品美女www| 欧美乱妇高清无乱码| 欧美日韩亚洲视频| 国产婷婷色综合av蜜臀av| 欧美一区在线直播| 国语自产精品视频在线看抢先版图片| 久久久亚洲国产天美传媒修理工| 久久精品中文字幕免费mv| 欧美福利视频在线观看| 国产精品最新在线观看| 国产日韩在线视频| 欧美日韩国产精品一区二区不卡中文| 欧美视频一二三| 欧美精品免费在线观看| 成人免费看片视频| 国产亚洲福利一区| 久久在精品线影院精品国产| 国产精品视频xxxx| 国产精品久在线观看| 菠萝蜜影院一区二区免费| 亚洲欧美国产精品va在线观看| 91亚洲va在线va天堂va国| 久久精品中文字幕免费mv| 成人在线视频网站| 欧美在线不卡区| 国产成人一区二区在线| 国产高清在线不卡| 91性高湖久久久久久久久_久久99| 国产日韩欧美影视| 久久久人成影片一区二区三区| 国产精品久久久久久久天堂| 国产精品入口尤物| 日韩中文字幕在线视频播放| 一区二区三区四区精品| 狠狠躁天天躁日日躁欧美| 久久福利视频导航| 久久激情五月丁香伊人| 在线国产精品播放| 日韩色av导航| 亚洲国产成人精品久久| 国产日本欧美在线观看| 成人免费福利在线| 亚洲女人天堂av| 国产日韩欧美视频在线| 亚洲视频777| 久久亚洲电影天堂| 日韩中文字幕视频在线观看| 亚洲欧美在线免费观看| 欧美日韩国产成人在线| 色狠狠av一区二区三区香蕉蜜桃| 欧美视频在线观看 亚洲欧| 色偷偷91综合久久噜噜| 国产精品久久久久久婷婷天堂| 亚洲激情免费观看| 欧美人与性动交| 午夜精品久久久久久久久久久久| 国产精品久久久久久久久| 成人h猎奇视频网站| 992tv在线成人免费观看| 久久久久久久久国产| 亚洲欧美日韩直播| 国产精品99久久久久久久久| 久久久久中文字幕| 国产午夜精品视频免费不卡69堂| 91av在线播放视频| 亚洲欧美日韩中文在线制服| 日本高清不卡在线| 亚洲成人精品在线| 在线电影欧美日韩一区二区私密| 欧美中文字幕在线视频| 在线日韩中文字幕| 91亚洲国产精品| 亚洲精品日韩丝袜精品| 91在线免费网站| 国产日韩欧美日韩| 日韩中文字幕第一页| 91亚洲精品久久久| 欧美高清自拍一区| 91国产高清在线| 国产精品一区久久久| 神马久久桃色视频| 国产精品国产亚洲伊人久久| 欧美日韩国产精品| 蜜臀久久99精品久久久久久宅男| 国产精品视频99| 日韩在线精品视频| 97香蕉久久夜色精品国产| 亚洲第一中文字幕在线观看| 精品国内自产拍在线观看| 久久影视三级福利片| 一二美女精品欧洲| 亚洲精品一区在线观看香蕉| 欧美激情中文字幕乱码免费| 97在线精品国自产拍中文| 国产精品福利网站| 亚洲激情小视频| 成人免费视频在线观看超级碰| 久久久国产一区二区三区| 午夜精品久久久久久久99黑人| 欧美激情二区三区| 日韩欧美视频一区二区三区| 国产有码在线一区二区视频| 九九热视频这里只有精品| 欧美成人午夜剧场免费观看| 欧美主播福利视频| 91影院在线免费观看视频| 亚洲人成电影网站| 伊人伊人伊人久久| 亚洲天堂网在线观看| 欧美一级免费看| 欧美成人精品一区二区三区| 亚洲黄页网在线观看| 欧美福利视频在线| 亚洲午夜激情免费视频| 久久99精品国产99久久6尤物| 国产精品一香蕉国产线看观看| 亚洲国产成人久久综合一区| 欧美一级免费看| 91av在线免费观看| 亚洲a区在线视频| 在线国产精品播放| 深夜精品寂寞黄网站在线观看| 久国内精品在线| 日韩久久午夜影院| 北条麻妃在线一区二区| 91色在线观看| 亚洲最大的av网站| 国产精品美乳一区二区免费| 亚洲人成电影网站色www| 国产人妖伪娘一区91| 欧美精品免费在线观看| 国产视频精品在线| 日本精品久久久久影院| 欧美综合在线观看| 夜夜狂射影院欧美极品| 2019中文字幕全在线观看| 亚洲欧美日韩天堂一区二区| 精品国产老师黑色丝袜高跟鞋| 久久全球大尺度高清视频| 亚洲欧洲在线观看| 亚洲天堂成人在线| 日韩高清免费在线| 国产精品精品一区二区三区午夜版| 欧日韩不卡在线视频| 浅井舞香一区二区| 日韩视频永久免费观看| 国产亚洲免费的视频看| 日韩在线资源网| 97精品国产97久久久久久春色| 亚洲新声在线观看| 久久国产视频网站| 日韩电视剧在线观看免费网站| 2019中文字幕在线观看| 亚洲无限av看|