gpt4 book ai didi

javascript - asp.net 将 javascript ajax 发布到用户控件

转载 作者:行者123 更新时间:2023-11-29 21:46:00 25 4
gpt4 key购买 nike

Javascript:

function Proposal(GetProposal, ProductName, ProductID) {

$.ajax({
type: "POST",
url: "Page.ascx/Proposal",
data: JSON.stringify({ GetProposal: GetProposal, ProductName: ProductName, ProductID: ProductID }),
contentType: "application/json; charset=utf-8",
dataType: "json",

failure: function (response) {
alert(response.d);
}
});

}

页面.ascx:

[WebMethod]
public static void Proposal(string GetProposal, string ProductName, string ProductID)
{

HttpContext.Current.Response.Redirect("MyPage");

}

当我尝试将 ajax 发布到 Proposal 方法时,出现以下错误:

POST http://localhost:63290/Page.ascx/Proposal 403 (Forbidden)

我在哪里遗漏了我的代码中需要更改的内容?

最佳答案

您不能调用此方法,因为 ascx 控件不代表可以从客户端计算机访问的真实 URL。它们是服务器端的,旨在嵌入其他页面。

相反,您可以尝试将您的方法放在.aspx 页面中,然后调用方法

$.ajax({
type: "POST",
url: "NewPage.aspx/Proposal",
data: JSON.stringify({ GetProposal: GetProposal, ProductName: ProductName, ProductID: ProductID }),
contentType: "application/json; charset=utf-8",
dataType: "json",

failure: function (response) {
alert(response.d);
}
});

和您的 NewPage.aspx 必须包含您编写的相同方法

[System.Web.Services.WebMethod]
public static void Proposal(string GetProposal, string ProductName, string ProductID)
{

HttpContext.Current.Response.Redirect("MyPage");

}

关于javascript - asp.net 将 javascript ajax 发布到用户控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31160052/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com