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 ...
随机推荐
- Oracle数据类型与.NET中的对应关系(转)
Oracle数据类型与.NET中的对应关系 2011-02-24 10:02:16 标签:C# oracletype Oracle 数据类型 .NET Oracle连接添加的引用不同,会存在数据类型不 ...
- canvas入门
<html> <head> <script> window.onload=function(){ var canvas=document.getElementByI ...
- Python 整理一
---恢复内容开始--- Python (pailen)最近学习这个语言,其实早在几年前学习perl的时候就知道有这个语言了,在讲perl的那本书后面就推荐学习python,并且还附加了二章的入门.当 ...
- Zigbee、WiFi和433MHz无线技术各有特点
Zigbee.WiFi和433MHz无线技术都属于近距离无线通讯技术,并且都使用ISM免执照频段,但它们各具特点. ZigBee的特点是低功耗.高可靠性.强抗干扰性,布网容易,通过无线中继器可以非 ...
- Intuit Quicken Home & Business 2016(Manage your business and personal finances)
Quicken Home & Business 2016 - Manage your business and personal finances all in one place. Cate ...
- 在IE浏览器中iframe跨域访问cookie/session丢失的解决办法
单点登录需要在需要进入的子系统B中添加一个类,用于接收A系统传过来的参数: @Action(value = "outerLogin", results = { @Result(na ...
- C语言的本质(13)——指向指针的指针
指针可以指向基本类型,也可以指向复合类型,因此一个指针变量存放的可以是另一个指针变量的地址,则称这个指针变量为指向指针的指针变量.由于指针变量直接指向变量,所以称为"单级间址".而 ...
- Windows查看电脑上安装的.Net Framework版本的五种方法(转)
1.查看安装文件判断Framwork版本号 打开资源管理器,比如我的电脑,再地址栏输入%systemroot%\Microsoft.NET\Framework后单击“转到”或者按回车. 在新文件夹中查 ...
- hdu 5621 KK's Point(数学,推理题)
题解: 在圆上点三个点时,除圆上三个交点外,圆内没有交点:在圆上点四个点时,除圆上四个交点外,圆内出现了一个交点,因此,在N个点中每四个点便可以在圆内产生一个交点,因此N个点在圆内形成的点的个数为CN ...
- ExtJs3学习资料分享
最近在学习EXTJS3,在网上找了一些pdf的书.不过网上分享的有些书都是Ext2.0的.Ext3的比较少.有些书也不全.很多是样章.最近找到一本分享的书<ExtJS源码分析与开发实例宝典> ...