KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I know there are more threads about this but they dont help me and I'm going insane here! I wanna pass some parameters in to a web method using jQuery Ajax. var paramList = ''; for(i = 0; i < IDList.length; i++){ if (paramList.length > 0) paramList += ','; paramList += '"' + 'id' + '":"' + IDList[i].value + '"'; } paramList = '{' + paramList + '}'; var jsonParams = JSON.stringify(paramList); $.ajax({ type: "POST", url: "editactivity.aspx/UpdateSequenceNumber", data: jsonParams, contentType: "application/json; charset=utf-8", dataType: "json", success: function(response) { } }); In the ajax call, if I put data to paramList I get the error: "Invalid web service call, missing value for parameter: \u0027a\u0027." If I put data to jsonParams I get the error: "Cannot convert object of type \u0027System.String\u0027 to type \u0027System.Collections.Generic.IDictionary`2[System.String,System.Object]\u0027" If I write out paramList , it's in a correct JSON format like {"id":"140", "id":"138"} If I write out jsonParams , it's in an incorrect format like "{\"id\":\"140\",\"id\":\"138\"}" The web method: (it doesn't do that much yet..) [System.Web.Services.WebMethod] public static string UpdateSequenceNumber(string a, string b) { return a+b; } What am I doing wrong? Can't seem to get this JSON thing right. UPDATE: After some help from the first answer I now send {"id":["138","140"]} in the AJAX request. The web method now takes a string called id as the parameter instead. [System.Web.Services.WebMethod] public static string UpdateSequenceNumber(string id)
Tags (comma-separated)
Save Edits
Cancel