我尝试在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 "";
}
我该怎么做?
非常感谢!
答案 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;,...