Это мой первый раз, используя ajax, поэтому я не уверен, где я ошибаюсь. Когда выпадающее меню изменяется, я вызываю метод в javascript, где я хочу вызвать метод в коде. Это Разметка раскрывающийся:ajax не вызывающий метод в url
<asp:DropDownList ID="ddListSubject" runat="server" ClientIDMode="Static" onchange="SubjectChanged()" CssClass="chosen-single">
</asp:DropDownList>
Это Java-функция «SubjectChange()», что называется.
function SubjectChanged() {
var strSubject = document.getElementById("ddListSubject").value;
if (strSubject == "Custom") {
document.getElementById("txtBoxSubject").value = "";
document.getElementById("txtBoxSubject").focus();
}
else {
document.getElementById("txtBoxSubject").value = strSubject;
}
ShowMaxMsgLength();
CountChars();
}
Функция 'ShowMaxMsgLength()' содержит код Ajax для вызова метода в коде-позади:
function ShowMaxMsgLength() {
$.ajax({
type: "POST",
url: "Default.aspx/GetMaxMsgLength",
data: "{'id': '1'}",
contentType: "application/json; charset=utf-8",
datatype: "json",
success: OnSuccess,
failure: OnFailure,
error: function (exception) { alert('Exception:' + exception); }
});
};
Это метод GetMaxMsgLength() в коде-позади:
public static string GetMaxMsgLength(int id)
{
string tstrMaxMsgLength = string.Empty;
return tstrMaxMsgLength = "32";
}
Я просто хочу, чтобы он возвращал '32', чтобы посмотреть, работает ли этот метод. Я знаю, что ShowMaxMsgLength() вызывается, потому что я помещаю в него «предупреждение».
Исключено: Исключение: [object Object] '. Я не знаю, что я не устанавливаю, что вызывает это исключение.
Спасибо.