茅侃侃
2023-05-18 10:46:53
我正在使用 bootstrap/jquery 3.4.1 js 開(kāi)發(fā) ASP.NET Web 窗體項(xiàng)目。我遇到了讓我的 AJAX Post 工作的問(wèn)題。它應(yīng)該在 Schedule.aspx 中命中我的 [WebMethod],但事實(shí)并非如此。我已經(jīng)在它上面設(shè)置了一個(gè)斷點(diǎn),并且在單擊保存按鈕時(shí)它從未被激活。AJAX 成功并彈出警報(bào),我已經(jīng)驗(yàn)證了 stringify 數(shù)據(jù)按預(yù)期輸出,但為什么它沒(méi)有命中 [WebMethod]?這是我的 JavaScript 函數(shù):$(document).on('click', '#modalSave', function (e) { var testValue = "TestValue"; $.ajax({ type: "POST", url: "Schedule.aspx/InsertItem", data: JSON.stringify({ Content: testValue }), contentType: "application/json; charset=utf-8", dataType: "json", success: function () { alert("AJAX success"); $('#DetailsModal').modal('hide'); } })});我的 [WebMethod]using System.Web.Services;namespace Scheduler{ public partial class Schedule : Page { [WebMethod] public static string InsertItem(string Content) { return Content; } }}我的模式和保存按鈕:<div id="DetailsModal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">× </button> <h4 class="modal-title" id="myModalLabel">Modal title</h4> </div> <div class="modal-body"> <textarea id="modalTextArea" style="width: 100%; height: 300px;"></textarea> </div> <div class="modal-footer"> <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> <button id="modalSave" type="button" class="btn btn-primary">Save changes</button> </div> </div> </div></div>
1 回答

開(kāi)滿天機(jī)
TA貢獻(xiàn)1786條經(jīng)驗(yàn) 獲得超13個(gè)贊
我已經(jīng)模擬了你的代碼,我可以成功進(jìn)入斷點(diǎn)WebMethod
,一個(gè)可能的原因是你沒(méi)有在你的Visual Studio IDE中激活調(diào)試模式
更新 2:
WebMethod使用 RouteConfig 配置啟用調(diào)用:
public static class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
var settings = new FriendlyUrlSettings();
settings.AutoRedirectMode = RedirectMode.Off;
routes.EnableFriendlyUrls(settings);
}
}
添加回答
舉報(bào)
0/150
提交
取消