MasterPage中的Asp net AJAX

时间:2012-03-18 06:09:09

标签: c# asp.net ajax

我尝试在MasterPage文件中使用一些AJAX,但是出现了这个错误:

  

http://localhost:15354/website/MasterPage.master/Login无法加载资源:服务器响应状态为403(禁止)

我在一些论坛上说我们无法通过MasterPage调用AJAX函数,如下所示:

function Login() {
        var obj = new Object();
        obj.user = "";
        obj.pass = "";

        $.ajax({
            type: "POST",
            url: "MasterPage.master/Login",
            data: JSON.stringify(obj),
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (result) {
                alert("success");
            },
            error: function (){
                alert("error");
            }
        });
    }

这是我在后面的代码中的函数:

[WebMethod]
public static string Login(string user, string pass)
{


    return "";
}

我该怎么做?

非常感谢!

4 个答案:

答案 0 :(得分:3)

最好为此提供Web服务,并从ajax请求调用webservice url。


$.ajax({
    /// <summary>
    ///  Perform an asynchronous HTTP (Ajax) request
    /// </summary>
    type: "POST",
    url: "AjaxServer.asmx/Login",
    data: "{}",
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function(response) {
        /// <summary>
        /// when success
        /// </summary>
        alert(response.d);
    },
    failure: function(msg) {
        /// <summary>
        /// when there is an error
        /// </summary>
        alert(msg.d);
    }
});​

答案 1 :(得分:3)

您可以为登录信息创建.ascx并在那里调用ajax

答案 2 :(得分:1)

将服务器端代码移动到帮助页面,即webmethods.aspx,然后在那里调用它。

答案 3 :(得分:1)

母版页没有自己的生命 母版页方法在继承master的所有页面中调用 所以你可以从使用母版页的任何页面调用你的方法

$。AJAX({   url:&#39; Login.aspx / Login&#39;,   键入:&#39; POST&#39;,...