Как отправить массив параметров запроса на сервлет с помощью jQuery $ .ajax?

Я хотел бы отправить массив JavaScript в сервлет с помощью jQuery $.ajax .

 var json=[1,2,3,4]; $.ajax({ url:"myUrl", type:"POST", dataType:'json', success:function(data){ // codes.... }, data:json }); 

Когда я использую

 request.getParameter("json"); request.getParameterValues("json"); 

Он возвращает null.

Как я могу получить доступ к значениям?

Отправьте массив как значение объекта JS, чтобы вы попали в {json:[1,2,3,4]} .

 var json=[1,2,3,4]; $.ajax({ url:"myUrl", type:"POST", dataType:'json', data: {json:json}, success:function(data){ // codes.... }, }); 

В сервлет вам необходимо суффицировать имя параметра запроса с помощью [] .

 String[] myJsonData = request.getParameterValues("json[]"); 

jQuery добавляет их, чтобы быть дружелюбным к слабым типизированным языкам, таким как PHP.

Вы должны преобразовать свой массив в тип JSON, чтобы вместо [] ему нужно было прочитать

  var array = [ 1, 2, 3, 4 ]; 

для этого вам нужно позвонить

  var json = JSON.stringify(array) 

то вы можете передать его в свой вызов ajax

  $.ajax({ url:"myUrl", type:"POST", data: json, dataType:'json', success:function(data){ // codes.... }}) 

Вам нужно разместить свой объект данных javascript, как это.

http://api.jquery.com/jQuery.post/

 $.post("test.php", { name: "John", time: "2pm" }, function(data) { alert("Data Loaded: " + data); }); 
  • Добавление значений в массив C #
  • Получите первые N элементов массива?
  • Как проверить, содержит ли массив определенное значение?
  • Как создать точную копию массива?
  • Преобразование аргументов командной строки в массив в Bash
  • MongoDB - запрос последнего элемента массива?
  • JavaScript: разница между .forEach () и .map ()
  • Как std :: end знает конец массива?
  • Как я могу динамически добавлять элементы в массив Java?
  • Генератор случайных чисел в C # - уникальные значения
  • Почему `Array (0,1,2) == Array (0,1,2)` не возвращает ожидаемый результат?
  • Interesting Posts

    Как я могу использовать jQuery.load для замены div, включая div

    Как решить «не удалось лениво инициализировать сборку роли» Исключение Hibernate

    Откройте JQuery Datepicker, нажав на изображение без ввода поля

    Обновление плагина jQuery Tablesorter после удаления строки из DOM

    ScrollView Inside ScrollView

    как связать datatable с datagridview в c #

    Несколько / одиночный экземпляр Linq to SQL DataContext

    Поднятие процесса ProcessBuilder через UAC?

    Как создать RelativeLayout программно с двумя кнопками один поверх другого?

    Настройка wake-on-lan для mac os x через Actiontec T1200H Router: порты 7 и 9 закрыты

    Entity Framework создает множественное имя таблицы, но представление ожидает уникальное имя таблицы?

    Почему опция «Установить как старт» хранится в файле suo, а не в sln-файле?

    Как это возможно? Сервис работает неограниченно, а также разрешает привязку к андроиду?

    Как установить бета-версию Google Chrome для всех пользователей?

    Исключение синтаксиса формата даты – «EEE MMM dd HH: mm: ss Z yyyy»

    Давайте будем гением компьютера.