快捷搜索:  as  2018  FtCWSyGV  С˵  test  xxx  Ψһ  w3viyKQx

澳门新葡亰app是真的吗_龟发之家论坛



假设有一个页面index.asp,上半部分为评论列表显示区域,下面为评论提交区域。那么这样一个页面我们若何显示评论内容和提交评论呢?

传统:上半部分评论列表直接经由过程数据库查询语句读取并显示,每当提交新的评论时,澳门新葡亰app是真的吗先通报给处置惩罚页面,处置惩罚页面处置惩罚完毕后再返回index.asp这个页面,当然index.asp是从新加载得到新的评论。

Ajax::首先列表页面的内容是一个零丁的xml文件(pl_list.asp),然后index..asp中的上半部分评论经由过程XmlHttpRequest哀求pl_list.asp页面,并经由过程返回的结果通报到必要更新区域。提交评论同样如斯,每次提交采纳XmlHttpRequest哀求提交处置惩罚法度榜样,然后从新更新评论列表显示区域。

此新闻评论系统共分为五个部分,分手为数据库、前台页面、JS代码、办事器处置惩罚、CSS样式。

数据库的设计

PL表:

字段名 类型 长度

id 自动编号

user 文本 20

dateandtime 日期/光阴

content 备注

newid 数字

前台页面:(index.htm)

前台页面共包括两部分,上半部分为页面评论列表显示,下半部分为提交评论。因为我们这里只是模拟一个新闻评论系统,并没有真正的新闻页面,那么在通报新闻ID的时刻我们采纳了一个默认值。

代码:index.htm

正在加载评论……

评论

呢称:

内容:

JS代码页(核心部分) main.js

JS代码算是本系统的一个核心部分了,Ajax的表现基础全包孕在这短短数十行的代码中,是贯穿毗连前台与后台处置惩罚的一个桥梁,可谓是重中之重,为了更好的让大年夜家理解全部功能,我们将分段先容。

1、得到XmlHttp工具,创建并返回一个XmlHttp工具。

var xhr;

function getXHR() {

try {

xhr=new ActiveXObject("Msxml2.XMLHTTP");

} catch (e) {

try {

xhr=new ActiveXObject("Microsoft.XMLHTTP");

} catch (e) {

xhr=false;

}

}

if(!xhr&&typeof XMLHttpRequest!='undefined') {

xhr=new XMLHttpRequest();

}

return xhr;

}

function openXHR(method,url,callback) {

getXHR();

xhr.open(method,url);

xh澳门新葡亰app是真的吗r.onreadystatechange=function() {

if(xhr.readyState!=4)return;

callback(xhr);

}

xhr.send(null);

}

function loadXML(method,url,callback) {

getXHR();

xhr.open(method,url);

xhr.setRequestHeader("Content-Type","text/xml");

xhr.setRequestHeader("Content-Type","GBK");

xhr.onreadystatechange=function() {

if(xhr.readyState!=4) return;

callback(xhr);

}

xhr.send(null);

}

详细的调用措施:

loadXML(method,url,callback)

method: http措施,例如:POST、GET、PUT及PROPFIND

url: 哀求的URL地址,可以为绝对地址也可以为相对地址

callback:自定义的返回处置惩罚函数

2.得到评论列表

此段代码的主要功能是根据办事器处置惩罚返回的信息更新前台页面的内容,主要包括显示评论列表、评论列表分页、跳转页数三个功能。

显示评论列表:getList函数

function getList(xmlDom) {

var pllist=document.getElementById("pllist"); //得到页面pllist工具,此工具用来显示评论内容

var node=xmlDom.responseXML.getElementsByTagName("pllist");//得到pllist节点聚拢

var tot=xmlDom.responseXML.getElementsByTagName("pl")[0].getAttribute("tot");//得到pl节点tot属性值,这里指评论的总数量

var curpage=xmlDom.responseXML.getElementsByTagName("pl")[0].getAttribute("curpage");//得到pl节点curpage属性,这里指评论列表当前所在的页数,利用于翻页

if (tot!=0) { //判断当前评论数是否为空

var cont="";

var len=node.length;//得到pllist节点聚拢中节点的总数量

for(var i=0;i

评论列表分页:pagecount函数

function pagecount(tot,cur) {

var cont1="";

if (tot%5==0) { //默认每页五条,这个要求与办事器端维持同等

pages=parseInt(tot/5);

} else {

pages=parseInt(tot/5)+1;

}

for(var j=1;j"+j+" "

} else {

cont1+=""+j+" "}

}

return cont1;

}

跳转页数:gotopage函数

function gotopage(page) {

loadXML("get","pl_list.asp?page="+page,getList);

}

function loadDom() { //准时更新评论列表,初始化10秒钟

loadXML("get","pl_list.asp",getList);

setTimeout("loadDom()",10000)

}

3.删除评论

function del(idnub) {

var msg=document.getElementById("msg");

msg.innerText="正在删除……";

loadXML("get","pl_del.asp?id="+idnub,getdel);

}

function getdel(xmlDom) { //删除后所触发的事故,更新页面

var msg=document.getElementById("msg");

msg.innerText="删除成功!";

loadXML("get","pl_list.asp",getList);

}

4.提交评论

function fb() { //处置惩罚提交

var msg=document.getElementById("msg");

var user=document.getElementById("user");

var content=document.getElementById("content")

var newsid=document.getElementById("newsid")

if (user.value=="") {

alert("呢称弗成为空!");

return false;

}

if (content.value=="") {

alert("内容弗成为空!");

return false;

}

msg.innerText="正在颁发评论";

loadXML("get","pl_fb.asp?user="+user.value+"&content="+content.value+"&newsid="+newsid.value,getfb);

}

function getfb(xmlDom) { //评论提交后所触发的事故,更新评论列表

var msg=document.getElementById("msg");

msg.innerText=xmlDom.responseText;

loadXML("get","pl_list.asp",getList);

}

办事器处置惩罚法度榜样

根据JS代码页的分段先容,我们懂得此系统的功能大年夜致包括评论的显示处置惩罚、评论的删除处置惩罚、评论的提交处置惩罚三个功能,那么我们就根据这三个功能分手先容。

评论的显示处置惩罚页面:pl_list.asp

此法度榜样为asp天生xml文件,经由过程分页的要领将评论的内容以XML的形式出现出来,我们可以零丁运行代码:

")

currentpage=request("page")

if currentpage="" or int(currentpage)=0 then currentpage=1

set rs=server.createobject("adodb.recordset") 雨枫技巧教程网

sql="select * from pl order by id desc"

rs.cursorlocation=3

rs.open sql,conn,1,1澳门新葡亰app是真的吗

if not rs.bof or not rs.eof then

rs.pagesize=5

rs.absolutepage=currentpage

rowcount=rs.pagesize

Response.write("

")

d澳门新葡亰app是真的吗o while not rs.eof and rowcount>0

Response.write("

")

Response.write(""&rs("user")&"")

Response.write(""&rs("dateandtime")&"")

Response.write(""&rs("content")&"")

Response.write(""&rs("id")&"")

Response.write("")

rowcount=rowcount-1

rs.movenext

loop

else

Response.write("

")

end if

rs.close

set rs=nothing

response.write("")

Conn.asp 数据库贯穿毗连文件,在删除与提交处置惩罚中同样应用

评论的删除处置惩罚页面:pl_list.asp

评论的提交处置惩罚页面:pl_fb.asp

CSS样式 main.css

一个好的页面出现效果离不开一个好的样式,当然我这个属于最基础的,算是看得清楚罢了,大年夜家假如有兴趣可以对样式文件作改动。

.u { /*呢称*/

font-size: 12px;

float:left;

height:25px;

line-height:20px;

width:120px;

}

.d { /*光阴*/

font-size: 12px;

float:left;

height:25px;

line-height:20px;

w澳门新葡亰app是真的吗idth:120px;

}

.idnub { /*删除*/

text-align:center;

font-size: 12px;

height:25px;

line-height:25px;

width:30px;

}

.co {/*内容*/

font-size: 12px;

width:280px;

}

您可能还会对下面的文章感兴趣: