Ajax制作无刷新评论系统
index.html
<script src="jquery.min.js"></script>
<script>
$(function(){
$.ajax({ //页面载入时载入评论信息
type:"GET",
url:"10-17.php?act=load&id="+Math.random(),
error:function(){$("#comments").html("获取评论信息失败");},
success:function(data){
$("#comments").html(data); }
});
$("#Submit").click(function(){
title=$("#title").val(); author=$("#author").val(); //获取表单中的数据
email=$("#email").val(); content=$("#content").val(); $.post("10-17.php",{ //发送表单中的数据给addnew.asp
title:escape(title), author:escape(author),
email:escape(email), content:escape(content),
act:"add"
},
function(data){
alert(data);
if(data==){
$("#title").val(''); $("#author").val(''); //清空添加记录框中的内容
$("#email").val(''); $("#content").val(''); var newcom="<div style='border:1px solid #CCC;margin:5px;'>网友:"+author+" 发表于"+Date()+"<br/>标题:"+title+"<br/>"+content+" Email:"+email+"</div>";
$("#comments").prepend(newcom); //插入到元素内部的最前面 }
} );
} );
} );
</script> </head> <body>
<h3 style="margin:4px; text-align:center">网友评论</h3>
<div id="comments"><!--用来载入评论的内容,未加载完时显示加载中图标-->
<div style="border:1px solid #CCC;margin:5px 5px;"><img src="onLoad.gif" alt="加载中..." /> 评论加载中......</div> </div> <form style="margin:8px;">
<table width="" border="" align="center" cellpadding="" cellspacing="" bgcolor="#333333">
<caption>请在下面发表你的高见吧</caption>
<tbody bgcolor="#ffffff">
<tr>
<td>昵称:</td>
<td><input type="text" id="author"></td>
</tr>
<tr>
<td>邮箱:</td>
<td><input type="text" id="email"></td>
</tr>
<tr>
<td width="">标题:</td>
<td width=""><input type="text" id="title"></td>
</tr> <tr>
<td>内容:</td>
<td><textarea id="content" cols="" rows=""></textarea></td>
</tr>
<tr>
<td></td>
<td><input type="button" id="Submit" value="发表评论"></td>
</tr>
</tbody>
</table>
</form>
10-17.php
<?
header("Content-type: text/html; charset=gb2312"); require('conn.php');
$act=$_REQUEST["act"]; //获取act变量的值
//$act="load";
if($act=="load") { //如果是请求载入评论
$result=$conn->query("select * from lyb order by ID desc limit 3"); if($result->num_rows>) {
while($row=$result->fetch_assoc()){
?>
<div style="border:1px solid #CCC;margin:5px;">
网友:<?= $row["author"] ?> 发表于<?= $row["date"] ?><br/>
标题:<?= $row["title"] ?><br/>
<?= $row["content"] ?> Email:<?= $row["email"] ?>
</div>
<? }
}
else echo "<p>目前还没有用户留言</p>";
}
if($act=="add") {
//'如果是发表评论
$title = unescape($_POST["title"]); //获取10-16.php传来的数据
$author = unescape($_POST["author"]);
$email = unescape($_POST["email"]);
$content = unescape($_POST["content"]);
$date=date("Y-m-d h:i:s");
$sql="Insert into lyb(title,author,email,content,date) values('$title','$author','$email', '$content','$date')"; if($conn->query($sql)) echo ;
} ?>
(1)该评论系统中的新闻是在页面载入之后采用Ajax技术载入进来的,因此HTML代码中可以没有任何用来读取数据表lyb中的评论数据的php代码。
(2)载入评论的容器元素#comments中本来就含有一个“正在加载”的图像和文字,当载入完成之后,这些内容会被评论信息替换掉。达到不用$.ajax()方法的beforeSend()函数也能实现显示“正在加载”图标的效果。
(3)该评论系统也采用了在服务器端和客户端分别插入记录的方法,服务器端插入记录成功后,发送标志1给客户端,客户端采用prepend()方法动态插入div元素。
Ajax制作无刷新评论系统的更多相关文章
- ajax无刷新评论示例
下面就为大家带来一篇 ajax无刷新评论示例.学习还是有点帮助的,给大家做个参考吧. 这是留言板的界面,当用户点击提交留言的时候,自动提交到我的留言下面 留言内容中为空,或者为灰色的“没有填写留言内容 ...
- Ajax 实现无刷新页面
注意:如本文所用,在前面的文章库的数目可以在源代码中找到,我将指示在文本,其中链路,为了缩短制品的长度,阅读由此带来的不便.乞求被原谅. 评论文章 Ajax 实现无刷新页面.其原理.代码库.代码. 这 ...
- 使用ajax实现无刷新改变页面内容
如何使用ajax实现无刷新改变页面内容(也就是ajax异步请求刷新页面),下面通过一个小demo说明一下,前端页面代码如下所示 1 <%@ Page Language="C#" ...
- jsp+ajax实现无刷新
jsp+ajax实现无刷新,鼠标离开文本框即验证用户名 jsp+ajax实现无刷新,鼠标离开文本框即验证用户名(本功能多用于注册) input.jsp(表单提交页面): %@ page content ...
- window.history.pushState与ajax实现无刷新更新页面url
ajax能无刷新更新数据,但是不能更新url HTML5的新API: window.history.pushState, window.history.replaceState 用户操作history ...
- Ajax 实现无刷新分页
Ajax 实现无刷新分页
- PHP+Ajax+plupload无刷新上传头像代码
很简单的一款PHP+Ajax+plupload无刷新上传头像代码,兼容性很好,可以直接拿来用.你可以自定义各种类型的文件.本实例中只能上传"jpg", "png" ...
- jQuery+php+ajax实现无刷新上传文件功能
jQuery+php+ajax实现无刷新上传文件功能,还带有上传进度条动画效果,支持图片.视频等大文件上传. js代码 <script type='text/javascript' src='j ...
- JS---案例:无刷新评论---属于创建对象的案例拿出来复习
案例:无刷新评论---属于创建对象的案例拿出来复习 创建行和单元格,添加到相应元素中,设置内容 createElement, appendChild,innerHTML <!DOCTYPE ht ...
随机推荐
- H - Ones
Description Given any integer 0 <= n <= 10000 not divisible by 2 or 5, some multiple of n is a ...
- 基于java的InputStream.read(byte[] b,int off,int len)算法学习
public int read(byte[] b, int off, int len) throws IOException 将输入流中最多 len 个数据字节读入字节数组.尝试读取多达 len 字节 ...
- ng-if和ng-show的区别
angularJS中的ng-show.ng-hide.ng-if指令都可以用来控制dom元素的显示或隐藏.ng-show和ng-hide根据所给表达式的值来显示或隐藏HTML元素.当赋值给ng-sho ...
- LogBoy logo
- html5 canvas 一个漫天飞雪的效果
很棒的下雪效果 代码奉上 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http: ...
- 使用runtime 实现weex 跳转原生页面
一.简述 最近项目组打算引入weex,并选定了一个页面进行试水.页面很简单,主要是获取数据渲染页面,并可以跳转到指定的页面.跟之前使用RN 相比,weex 确实要简单很多.从下图中我们可以看到,wee ...
- shopnc 商家中心添加打印商品二维码功能
需求中提到需要增加每一件商品可以打印,用于线下体验店实体商品的二维码标签,客人可以根据手机扫二维码功能进行购买 任务描述: 1.如附件实现”批量打印标签“和单个商品”打印“标签功能. 2.标签有两种” ...
- shell编程笔记(基本部分)
1.变量 a.需要给变量赋值时,可以这么写: b.要取用一个变量的值,只需在变量名前面加一个$ ( 注意: 给变量赋值的时候,不能在"="两边留空格 ) c.然后执行 chmod ...
- Python2.7 转义和正则匹配中文
今天爬虫(新浪微博 个人信息页面)的时候遇到了转义和正则匹配中文出乱码的问题. 先给出要匹配的部分网页源代码如下: <span class=\"pt_title S_txt2\&quo ...
- python学习day10
目录 Twisted Redis RabbitMQ Twisted 事件驱动 事件驱动分为两个部分:第一,注册事件:第二,触发事件. 自定义事件启动框架,命名为:"弑君者" ...