日期:2014-05-16  浏览次数:20875 次

ajax读写cookie的问题
JS部份

var searchcount="0";
var ssql="action=getsarchcount"
 $.ajax({
        type: "get",
async : false,
        dataType: "html",
        url: '/inc/act.asp',
        data: ssql,
        success: function (data) {
             searchcount=data;
        }
    });
//alert(searchcount);//注意这句
//return false;

var sql="action=searchorder&key="+key+"&code="+code
 $.ajax({
        type: "get",
async : false,
        dataType: "json",
        url: '/inc/act.asp',
        data: sql,
        success: function (json) {           
                 alert(json.msg);           
        }
    });

======================
asp部份


If act="getsarchcount" Then'获取查询次数
dim sercharNum
sercharNum=Request.cookies("SearchCount")
if sercharNum="" Then sercharNum=0
Response.Write(sercharNum):Response.End()
ElseIf act="searchorder" Then'查询受理状态
orderid=Request.QueryString("key")
if orderid="" Then ShowJson "0","受理号不能为空"
'验证码判断
sercharNum=Request.cookies("SearchCount")
if sercharNum="" Then sercharNum=0
if Cint(sercharNum)>3 Then
code=Request.QueryString("code")
if code="" Then ShowJson "0","请输入验证码"
if code<>session("GetCode") Then ShowJson "0","验证码错误,请重新输入或获取"
End If

Response.Cookies("yhSearchCount").Expires=Date+7 '指定cookie保存时间
Response.Cookies("yhSearchCount")=cint(sercharNum)+1

Set Rs=Conn.execute("select * from tablename")
if Rs.eof and Rs.Bof Then
ShowJson "1","记录不存在"
Else
Response.Write("{""type"":""2"",""appdate"":"""&Rs("addtime")&"""""}")
Response.End()
End If
End If


===============================
需求:
这是一个利用ajax查询订单状态的功能,在查询页面默认情况下是不需要输入验证码的(验证码的html被设置了display:none),只有在查询次数达到3次以上时才会出现(这时属性更改display:;),所以点击提交时先获取cookie中的查询次数。
帮忙看下现在读写cookie的ASP代码是否正确,为什么点击查询时用alert显示cookie一直为空或不会自动增加。

IE8+IIS6

谢谢各位。

之前是用异步方式读取,出现这情况后改用同步,结果貌似是一样的。