Ответ 1
Найдено решение:
Это должно быть:
"{'Id1':'2','Id2':'2'}"
а не
"{'Id1':'2'},{'Id2':'2'}"
Я пытаюсь выполнить веб-сервис asp.net с помощью jquery. Когда я передаю только один входной параметр, он отлично работает:
$.ajax({
type: "POST",
url: url,
data: "{'Id1':'2'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: callback
});
но если я попытаюсь передать несколько параметров, это не сработает
$.ajax({
type: "POST",
url: url,
data: "{'Id1':'2'},{'Id2':'2'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: callback
});
Конечно, когда я пытаюсь передать 2 входных параметра, я изменяю веб-метод так, чтобы он принимал 2 входных параметра.
Любые идеи?
Найдено решение:
Это должно быть:
"{'Id1':'2','Id2':'2'}"
а не
"{'Id1':'2'},{'Id2':'2'}"
Это удар в темноте, но, возможно, вам нужно обернуть аргументы JSON; например, сказать что-то вроде этого:
data: "{'Ids':[{'Id1':'2'},{'Id2':'2'}]}"
Убедитесь, что ваш JSON правильно сформирован?
У меня такая же проблема и разрешена
data: "Id1=" + id1 + "&Id2=" + id2
Я думаю, что лучший способ:
data: "{'Ids':['2','2']}"
Чтобы прочитать эти значения Ids [0], Ids [1].