很多的网站会给站点的会员添加收藏夹的功能。大部分采用的是winopen的方法来实现的。今天发现用另外的一种方法。xmldom 注意了不是使用xmlhttp啊。(firefox测试不通过)
function addFavorite(title,sort_) { var url = location.href; xmlDom= new ActiveXObject("Microsoft.XMLDOM"); xmlDom.async = false; kk=xmlDom.load("/addFavorite.asp?url="+url+"&title="+title+"&sort="+sort_+""); if (kk) { aryXMLNodes = xmlDom.documentElement.selectNodes("Message"); node = aryXMLNodes[0]; if (node.getAttribute("IsSucces")=="true") { alert('添加成功'); } else { alert(node.getAttribute("Msg")) } } else { alert('添加失败'); } }
这个函数传递了三个参数过去。标题。地址。和类型。。现在我们看一下addFavorite.asp
<!--#include virtual="member/conn.asp" --> <!--#include virtual="member/function.asp" --> <% 'linbinbin '添加收藏夹的功能 dim sql,rs dim url,flag,msg,title,sort_ flag="true" msg="" if session("member")="" or session("member")=null then '是判断登陆的。 msg="对不起你还没登陆" flag="false" else url=trim(Request.QueryString("url")) title=trim(Request.QueryString("title")) sort_=trim(Request.QueryString("sort")) if url="" then msg="对不起,你添加的网址为空,请刷新后再试" flag="false" end if end if if flag<>"false" then OpenConn() sql="select url from favorite where url='"&url&"' and loginName='"&session("member")&"'" set rs=conn.execute(sql) if rs.eof then sql="insert into favorite(url,loginName,title,sort) values('"&url&"','"&session("member")&"','"&title&"','"&sort_&"')" conn.execute sql else msg="对不起,你已经添加了该记录" flag="false" end if CloseConn() end if %> <?xml version="1.0" encoding="GB2312" ?> <Tree> <Message Msg="<%=msg%>" IsSucces="<%=flag%>"/> </Tree> |