将代码后面的字符串传递给ajax

时间:2015-05-30 22:34:12

标签: javascript c# jquery asp.net ajax

我正在访问服务器端的方法。唯一的问题是我在AJAx中没有很多经验。我无法从.cs方法

中检索ajax中返回的字符串
$.ajax({
  type: 'GET',
  url: '/frmGpsMap.aspx?name=load',
  dataType: 'text',
  success: function(data) {
    alert(data.d);
  }
});
 protected void Page_Load(object sender, EventArgs e)
        {
            string crrName = Request.QueryString["name"];
            if (!String.IsNullOrEmpty(crrName))
            {
                if (crrName.ToLower().Equals("load"))
                {
                 string fh=   loadKMLFileToString();
                 hdnUsername.Value = fh;
                }
            }
        }

        public string loadKMLFileToString()
        {
            return "hello world";
        }

警报返回页面的html。我想显示“Hello World”字符串

2 个答案:

答案 0 :(得分:5)

要获得使用ajax的代码隐藏方法,您需要使用System.Web.Services.WebMethod。默认情况下,除非在

后面的代码中指定HTTP GET属性,否则需要使用POST
if($contar == 1) {
    $_SESSION['Logueado'] = TRUE;
}
if($_SESSION['Logueado']) {
    panel();
} else{
    echo "El usuario o contraseña es incorrecto";
}

以下是调用的ajax方法

[System.Web.Services.WebMethod]
public static string LoadKMLFileToString()
{
    return "Hello World";
}

我希望它有所帮助。 更多示例:http://weblogs.asp.net/karan/calling-server-side-method-using-jquery-ajax

答案 1 :(得分:2)

我认为您可以使用WebMethod属性修饰cs方法,并直接从ajax调用它。像这样:

 $.ajax({
  ...
  url: '/frmGpsMap.aspx?loadKMLFileToString',
  ...
});


  [System.Web.Services.WebMethod]
    public string loadKMLFileToString()
    {
        return "hello world";
    }

干杯! =)