Мне нужно передать список строк из нескольких выбранных контроллеров. Хотя требование выглядело очень просто для меня, я в это время ломал голову. Я провел справедливое исследование по этому вопросу, но не смог добиться успеха.Передача строкового массива в контроллеры mvc с использованием ajax
Ниже мой код Javascript. Пожалуйста, проигнорируйте комментарии. Я успешно смог получить список элементов в множественном выборе. В то время как я делаю вызов Ajax, я получаю объект ссылки ошибка»не установлен экземпляр объекта.
function submitForm() {
var selected = $('#selectedTasks option').map(function(){
return this.value
}).get()
var postData = { selectedTasks : selected } //corrected as suggested
//selectedTasks = JSON.stringify({ 'selectedTasks': selected });
alert(postData);
$.ajax({
type: "POST",
//contentType: 'application/json; charset=utf-8',
url: '@Url.Action("AssignTasks", "MonthEndApp")',
dataType: 'json',
data: postData,
traditional: true,
success: function (data) {
alert("Success");
},
error: function (xhr) {
alert(xhr.responseText);
}
});
}
MonthEndAppController.cs
[HttpPost]
public void AssignTasks(List<String> selectedTasks)
{
//do something
}
Может кто-то наставит меня, где именно я не так? Может кто-нибудь подскажет мне, что не так?
EDIT: Как предложил г-н Рори, я сделал изменения скрипта java. Теперь часть скрипта Java работает абсолютно нормально, но контроллер не вызывается, когда выполняется запрос ajax Может ли кто-нибудь помочь мне, если что-то не так? n вызов, сделанный контроллеру?
Благодарим за предложение. Это была полная ошибка на моей стороне. Спасибо, что указали это. Он действительно работал (часть javascript). Но контроль не перемещается к контроллеру, а отлаживается. Он просто отображает предупреждение «Успех», но не знает, почему управление не перемещается. Вы видите какие-либо проблемы с контроллером? – user3173346
@ user3173346 вместо [httppost] try [webmethod]? – codemonkeyliketab