0
我正在嘗試使用web方法保存數據。但是它顯示了一個像找不到方法的錯誤。未找到Ajax web方法
function InsertMasterCourse() {
var data = {};
data.Name = $('[id$=txtName]').val();
$.ajax({
type: 'POST',
url: '<%= ResolveUrl("~/MasterService.asmx/InsertMasterCourse") %>',
data: "{data:" + JSON.stringify(data) + "}",
contentType: "application/json; charset=utf-8",
dataType: 'json',
async: true,
success: function (response) {
$('#txtName').val('');
},
error: function (response) {
alert(response.statusText);
}
});
return false;
}
在的.asmx
[WebMethod()]
[ScriptMethod()]
public static void InsertMasterCourse(Master_CourseBLL data)
{
data.CollegeId = 1;
data.Status = "Active";
data.CreatedOn = DateTime.Now;
data.UpdatedOn = DateTime.Now;
data.Save(true);
}
在我的web.config我有加HTTP GET和POST請求如下
<location path="MasterService.asmx">
<system.web>
<webServices>
<protocols>
<add name="HttpGet"/>
<add name="HttpPost"/>
</protocols>
</webServices>
</system.web>
如果我檢查谷歌瀏覽器的控制檯,它顯示錯誤,如InsertMasterCourse.aspx找不到。 .aspx添加了我的Web服務方法。如何解決它。
嘗試取出ScriptMethod()屬性。這將導致它只接受GET請求。 https://stackoverflow.com/questions/941484/webmethod-vs-scriptmethod。同樣,根據此示例,您可能需要ASMX類聲明中的ScriptService()屬性:https://www.aspsnippets.com/Articles/Call-Consume-Web-Service-ASMX-using-jQuery-AJAX-in- ASPNet.aspx – ADyson
是的,我已經刪除ScriptMethod()。但仍然沒有找到錯誤 – Hisanth
你確定你已經按照我給的第二個鏈接正確設置了一切嗎? – ADyson