Надеюсь, это один лайнер.
Я прочитал статью Фила Хаака http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx и другие вопросы, но это около <form>
s и использование нескольких имен, а не форматирование объекта JS для запроса $.ajax()
.
У меня есть:
var elements$ = $('.someClass');
if(elements$.Length === 0){
//no need for call to server if no elements on page
return;
}
var elementsList = elements$.map(function (i, element) {
return $(element).data('some-data-attribute');
})
var data = getOtherObjectContainingData();
//encode in a format that can be automatically bound to list
data.ListOfString = elementsList.get().serializeArray(); //THIS LINE
$.post("ControllerName/ActionName", data, handler);
с действием контроллера
public JsonResult ActionName(SomeObject OtherObject, List<string> ListOfString)
Я пробовал serialize (), serializeArray () и могу решить эту проблему с помощью строки CSV, но я не хочу с этим расспрашивать, если связыватель моделей может делать это автоматически, если запрос отформатирован правильно. *
Как правильно связать $('string', 'string', 'string')
? 1018 *