私は初心者です。別のドロップダウンリストが選択されたインデックスを変更したときにデータベースからデータをロードするためにajaxを使用します。 しかし、私は500のエラーだけを得ています。 My jquery ajaxコードWebMethodへのAjax呼び出しでエラーが発生しました。
function ddlGroups() {
var s = $("#Content_ddlGroups").find("option:selected").prop("value");
$.ajax({
method: "GET",
contentType: "application/json; charset=utf-8",
//url is the path of our web method (Page name/function name)
url: "../panels/admin/AddProject.aspx/getSubgroups",
data: { Id: s },
dataType: "json",
//called on jquery ajax call success
success: function (result) {
$('#Content_SubGroups').empty();
$.each(result.d, function (key, value) {
$("#Content_ddlGroups").append($("<option></option>").val(value.GroupID).html(value.Title));
});
},
//called on jquery ajax call failure
error: function ajaxError(result) {
alert(result.status + ' : ' + result.statusText);
}
});
};
と私のC#のコード
[WebMethod]
[ScriptMethod(UseHttpGet = true)]
public static List<Group> getSubgroups(string Id)
{
DataTable dt = new DataTable();
List<Group> objDept = new List<Group>();
GroupsRepository jg = new GroupsRepository();
//Page page = (Page)HttpContext.Current.Handler;
//DropDownList DDLGroups = (DropDownList)page.FindControl("DDLGroups");
dt = jg.LoadSubGroup(Id.ToInt());
if (dt.Rows.Count > 0)
{
for (int i = 0; i < dt.Rows.Count; i++)
{
objDept.Add(new Group
{
GroupID = Convert.ToInt32(dt.Rows[i][0]),
Title = dt.Rows[i][1].ToString(),
});
}
}
return objDept;
}
問題は何ですか?
500は、例外がスローされたことを意味します。 *あなたのコードをデバッグするか、少なくとも 'try-catch'を追加することができます。 –
Camiloのコメントに追加するには、「getSubgroups」コードでエラーが発生しているので、実際のエラーを表示するためにtry catchを追加する必要があります。 – Sparrow
@Sparrowどのようにエラーを見ることができますか?私は自分のコードでtry catchを追加しましたが、私はerorrを表示する方法を知らない –