很多网站的新闻详情页里底部都有一个:顶一下,踩一下,或者吐槽、支持、无语等等点击可+1,其实这个就是使用了ajax实现的,下面青岛星网跟大家分享下ASP的具体实现思路。
response.write ("<a href='javascript:void(0)' onclick='digg("&rs("id")&",1)'>顶</a>(<span class='ding"&rs("id")&"'>"&rs("ding")&"</span>)") response.write ("<a href='javascript:void(0)' onclick='digg("&rs("id")&",2)'>踩</a>(<span class='cai"&rs("id")&"'>"&rs("cai")&"</span>)=><a href='article.asp?id="&rs("id")&"'>内容页顶踩</a><br/>")
function digg(getid,dingcai){ //以.post方式与dingcai.asp文件交互。注意路径 $.post('inc/dingcai.asp', { "id": getid , "dingcai": dingcai }, function(data){ data=data.indexOf('yang_yes') if(data>=0){ if(dingcai==1){ //重新获取当前"顶"并加1 var ding = parseInt($(".ding"+getid).html())+1; //重新更新"顶"的数据入库 $(".ding"+getid).html(ding); }else{ //踩 var cai = parseInt($(".cai"+getid).html())+1; $(".cai"+getid).html(cai); } alert("感谢你的支持!如果不需要js提示请删除本行代码"); }else{ alert("你已经投过票了!如果不需要js提示请删除本行代码"); } }, "text"); }
mycookies=0 id = request.form("id") dingcai = request.form("dingcai") if id<>"" then if request.cookies("mycookies"&id)<>id then '写入cookies,有效期24小时 Response.cookies("mycookies"&id)=id Response.Cookies("mycookies"&id).expires=dateadd("H",24,now()) else mycookies=1 end if else mycookies=1 end if '接受对应的id '如果顶踩过来的id不为空,并且获取是顶的操作或踩的操作 if request.form("id")<>"" and request.form("dingcai")<>"" then '如果是顶的操作 if dingcai=1 then sql = "update dingcai set ding=ding+1 where id="&id else sql = "update dingcai set cai=cai+1 where id="&id end if if mycookies=0 then conn.execute(sql) response.write "yang_yes" else response.write "yang_no" end if end if
这就完成了,列表页面与详情页面都可以类似实现。