asp.net中jQuery调用webService的有关问题

asp.net中jQuery调用webService的问题
就是一个登录验证数据正确性功能,首先我在点击登录的时候执行了下面的JS
JScript code

function Redirect(Admin_Id,Admin_PassWord,CheckCode)//参数依次是用户名、密码、验证码
{
    var options=
    {
        type:"POST",
        data:"{Admin_Id:'"+Admin_Id+"',Admin_PassWord:'"+Admin_PassWord+"',CheckCode:'"+CheckCode+"'}", 
        url:"/AllWebService.asmx/CheckLoginInfo",
        contentType:"application/json;charset=utf-8",
        dataType:"json",
        success:function(result)
                {
                    if(result=="CheckCodeError")
                    {
                        alert("验证码输入错误,请检查!");
                    }
                    else if(result=="AdminError")
                    {
                        alert("用户名或密码输入错误,请检查!")
                    }
                    else
                    {
                        window.location.href="Main.aspx?a="+result;
                    }
                }
    };
    $.ajax(options);
}



然后我添加了一个AllWebService.asmx,并在App_Code中的AllWebService.cs文件中写了这个方法

C# code

using System;
using System.Web;
using System.Collections;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Web.Script.Services;
using BLL;
using Model;
using System.Data;
using Common;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Formatters.Binary;
using System.IO;
using System.Text;

/// <summary>
/// AllWebService 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ScriptService]
public class AllWebService : System.Web.Services.WebService
{

    public AllWebService()
    {

        //如果使用设计的组件,请取消注释以下行 
        //InitializeComponent(); 
    }
    /// <summary>
    /// 判断用户名密码验证码是否正确
    /// </summary>
    /// <param name="Admin_Id">用户名</param>
    /// <param name="Admin_PassWord">密码</param>
    /// <param name="CheckCode">验证码</param>
    /// <returns>CheckCodeError:验证码错误;AdminError:用户名或密码错误;其他:正确的用户名</returns>
    [WebMethod(EnableSession = true)]
    public static string CheckLoginInfo(string Admin_Id, string Admin_PassWord, string CheckCode)
    {
        string result = "Right";
        
        if (String.Compare(HttpContext.Current.Session["CheckCode"].ToString(), CheckCode, true) != 0)
        {
            result = "CheckCodeError";
        }
        else
        {
            Admin admin = new Admin();
            admin.Admin_Id = Admin_Id;
            admin.Admin_PassWord = Admin_PassWord;
            BLL_Admin bll_admin = new BLL_Admin();
            result = bll_admin.CheckAdmin(admin);
        }
        return result;
    }
}



问题是:无论我怎么点击登录按钮都不会进到CheckLoginInfo方法里面来
但是:我把CheckLoginInfo方法挪到Login.cs中,并在调用的时候写这个路径url:"Login.aspx/CheckLoginInfo",
这时候调用成功,请问大家怎么回事,我感觉既然写在本页没问题,那么总的来说我的方法是没问题,可能就是使用.asmx的时候有些东西没有配置好。希望大家指教。


难道是路径写错了吗?网站结构如下:

我用过url:"/AllWebService.asmx/CheckLoginInfo",url:"../AllWebService.asmx/CheckLoginInfo",
都没反应...

写的详细点,希望大家指教,最近发贴问的太多了,分不够了,只能给这么点了,各位不要介意

------解决方案--------------------
你参考一下我写的
C# code
$(document).ready(function () {
            var l_para = "";
            var params = '{str:"' + l_para + '"}';  //此处参数名要注意和后台方法参数名要一致                  
            $.ajax({
                type: "POST",                   //提交方式   
                url: "yclcbmx.aspx/bindLeft",   //提交的页面/方法名   
                data: params,                   //参数(如果没有参数:null)   
                dataType: "text",               //类型   
                contentType: "application/json; charset=utf-8",
                beforeSend: function (XMLHttpRequest) {
                    //$('#shortcut_body').text("正在查询...");
                },
                success: function (msg) {
                    $(eval("(" + msg + ")").d).appendTo("#shortcut_body");        //将返回来的项添加到下拉菜单中   
                },
                error: function (xhr, msg, e) {
                    alert("error");
                }
            });
        });

 public static string bindLeft(string str)   //方法是静态的  
    {
        oracleHelp oraHelp = new oracleHelp();
        string flag = "";
        StringBuilder sb = new StringBuilder();
    }