我只是想呼籲jQuery用戶界面對話框的按鈕調用一個jQuery的Ajax「POST」的要求,這裏是代碼片段,如何做呼籲jQuery UI的對話框按鈕調用的jQuery的Ajax的功能
$("#addqust").dialog({
autoOpen: false,
width: 630,
modal: true,
resizable: false,
position: { my: "top", at: "top", of: window },
buttons: {
"Save": function (e) {
$.ajax({
type: "POST",
url: "Default.aspx/InsertQuestion",
contentType: "application/json; charset=utf-8",
data: { name: $("#qst").val() },
success: function (data) {
console.log($("#qst").val());
console.log(data.d);
// alert("message");
}
}).done(function (msg) {
alert("Data Saved ");
});
},
"Cancel": function() {
$(this).dialog("close");
}
}
});
,但我得到以下錯誤或console.log,而不是調用Page Web方法,
POST http://localhost:50583/Default.aspx/InsertQuestion 500 (Internal Server Error)
send
v.extend.ajax
$.dialog.buttons.Save
(anonymous function)
v.event.dispatch
o.handle.u
我想知道我做了什麼錯誤,感謝您的幫助。
更新的WebMethod,其用於測試的簡單方法,使用
[WebMethod()]
public static string InsertQuestion(string name)
{
try
{
string strjson;
strjson = name;
return strjson;
}
catch (Exception ex)
{
throw new System.Exception(ex.Message);
}
}
jQuery的版本,
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js" type="text/javascript"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.9.1/jquery-ui.min.js" type="text/javascript"></script>
'Default.aspx/InsertQuestion'看起來不正確。你有沒有一個Web服務或Web API控制器你想打電話? –
我已經在頁面方法 –
@JasonP之前加入了「[WebMethod()]」 - 他使用的ASP.NET AJAX頁面方法使用了「WebMethod」屬性。它本質上是在'.aspx'頁面中創建一個獨立的Web服務方法。 –