所有,通過循環jQuery通過傳遞作爲數組對象,並使用C#的WebMethod獲取數據出來
我得到我的webmethod在我後面的代碼,但我有我的反序列化JSON數據的問題。 我沒有很好的參考,但這裏是我「米試圖做的。我在我的webmethod的代碼是不是讓我從我的Ajax調用了傳遞的數據。感謝您的幫助。
$("[id$=rdbSaveAjax1]").click(function() {
var mappedJobRole = new Array();
$(".jobRole").each(function (index) {
var jobRoleIndex = index;
var jobRoleID = $(this).attr('id');
var jobRoleName = $(this).text();
// add all the roleids and rolenames to the job role array.
var roleInfo = {
"roleIndex": jobRoleIndex,
"roleID": jobRoleID,
"roleName": jobRoleName
};
queryStr = { "roleInfo": roleInfo };
mappedJobRole.push(queryStr);
});
$.ajax({
type: "POST",
url: "Apage.aspx/Save_Mapped_Role",
data: "{'savedRole': " + JSON.stringify(mappedJobRole) + "}",
contentType: "application/json; charset=utf-8",
dataType: "json",
async: false,
success: function (data) {
alert("successfully posted data");
},
error: function (data) {
alert("failed posted data");
}
});
});
在我後面的代碼我似乎無法獲取數據出來 我的等級:
public class MappedRole
{
public int Index { get; set; }
public string RoleID { get; set; }
public string RoleName { get; set; }
}
我的WebMethod:
[WebMethod]
public static bool Save_Mapped_Role(object savedRole)
{
bool success = false;
JavaScriptSerializer js = new JavaScriptSerializer();
IList<MappedRole> role = new JavaScriptSerializer().Deserialize<IList<MappedRole>>savedRole);
int Index = role[0].Index;
string RoleID = role[0].RoleID;
string RoleName = role[0].RoleName;
return success;
}
什麼是您的請求和響應JSON的樣子,當你使用像螢火蟲或IE開發者工具等工具來? – dmck
以及在後面的代碼中,我可以看到數據(webmethod),但只是不知道循環訪問數據的好方法。我在客戶端沒有收到任何錯誤,所以我沒有使用螢火蟲進行疑難排解。 – MdeVera