使用asp.net更改jquery ajax中的css

使用asp.net更改jquery ajax中的css,jquery,asp.net,Jquery,Asp.net,我想得到结果:2222。但是我现在不能得到结果。总是输出'3333'。 有人能帮我吗?非常感谢 <head runat="server"> <title></title> <script src="/Scripts/jquery-1.4.1.js" type="text/javascript"></script> <script language="javascript" type="text/javascript">

我想得到结果:2222。但是我现在不能得到结果。总是输出'3333'。 有人能帮我吗?非常感谢

<head runat="server">
<title></title>
<script src="/Scripts/jquery-1.4.1.js" type="text/javascript"></script>
<script language="javascript" type="text/javascript">
    $(function () {
        $("#Button1").click(function () {
            checkCard('333');
            var arrlist = $("span[class='error']");
            if (arrlist.length > 0) {
                alert('2222')
            }
            else {
                alert('3333');
            }
        });
    })
    function checkCard(card_no) {
        $.ajax({
            type: "GET",
            url: "CheckCard.ashx?card_no=" + card_no,
            success: function (data) {
                if (data == "true") {
                    $("#sw").addClass("error");
                }
                else {
                    $("#sw").removeClass("error");
                }
            }
        });
    }
 </script>
</head>
<body>
 <form id="form1" runat="server">
 <div>
    <span id="sw"></span>
</div>
</form>
    <input id="Button1" type="button" value="button" />
</body>

CheckCard.ashx:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.SqlClient;

namespace SwipeCard
{
/// <summary>
/// Summary description for CheckCard
/// </summary>
public class CheckCard : IHttpHandler
{

    public void ProcessRequest(HttpContext context)
    {
        context.Response.ContentType = "text/html";

        context.Response.Write("true");

        context.Response.End();

    }

    public bool IsReusable
    {
        get
        {
            return false;
        }
    }
}
}

$(函数(){
$(“#按钮1”)。单击(函数(){
支票卡('333');
var arrlist=$(“span[class='error']);
如果(arrlist.length>0){
警报('2222')
}
否则{
警报('3333');
}
});
})
功能检查卡(卡号){
$.ajax({
键入:“获取”,
url:“CheckCard.ashx?card_no=“+card_no,
成功:功能(数据){
如果(数据==“真”){
$(“#sw”).addClass(“错误”);
}
否则{
$(“#sw”).removeClass(“错误”);
}
}
});
}
CheckCard.ashx:
使用制度;
使用System.Collections.Generic;
使用System.Linq;
使用System.Web;
使用System.Data.SqlClient;
名称空间开关卡
{
/// 
///支票卡摘要说明
/// 
公共类支票卡:IHttpHandler
{
公共void ProcessRequest(HttpContext上下文)
{
context.Response.ContentType=“text/html”;
context.Response.Write(“true”);
context.Response.End();
}
公共布尔可重用
{
得到
{
返回false;
}
}
}
}
我想得到结果:2222。但是我现在不能得到结果。总是输出'3333'。
有人能帮我吗?非常感谢

$。ajax
是异步的。调用之后立即进行样式检查,因此无法保证操作已完成。将检查放入成功回调

<head runat="server">
<title></title>
<script src="/Scripts/jquery-1.4.1.js" type="text/javascript"></script>
<script language="javascript" type="text/javascript">
    $(function () {
        $("#Button1").click(function () {
            checkCard('333');
            var arrlist = $("span[class='error']");
            if (arrlist.length > 0) {
                alert('2222')
            }
            else {
                alert('3333');
            }
        });
    })
    function checkCard(card_no) {
        $.ajax({
            type: "GET",
            url: "CheckCard.ashx?card_no=" + card_no,
            success: function (data) {
                if (data == "true") {
                    $("#sw").addClass("error");
                }
                else {
                    $("#sw").removeClass("error");
                }
            }
        });
    }
 </script>
</head>
<body>
 <form id="form1" runat="server">
 <div>
    <span id="sw"></span>
</div>
</form>
    <input id="Button1" type="button" value="button" />
</body>

CheckCard.ashx:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.SqlClient;

namespace SwipeCard
{
/// <summary>
/// Summary description for CheckCard
/// </summary>
public class CheckCard : IHttpHandler
{

    public void ProcessRequest(HttpContext context)
    {
        context.Response.ContentType = "text/html";

        context.Response.Write("true");

        context.Response.End();

    }

    public bool IsReusable
    {
        get
        {
            return false;
        }
    }
}
}
function checkCard(card_no) {
    $.ajax({
        type: "GET",
        url: "CheckCard.ashx?card_no=" + card_no,
        success: function (data) {
            if (data == "true") {
                alert("Condition 1 exists");
                $("#sw").addClass("error");
            }
            else {
                alert("Condition 2 exists");
                $("#sw").removeClass("error");
            }
        }
    });
}