Отправка данных с использованием for l oop для каждого массива во внутреннем массиве с Ajax - PullRequest
0 голосов
/ 09 апреля 2020

Мои данные включают один датчик и слишком много сигналов тревоги, связанных с этим датчиком. Я пытаюсь создать много Alarm, используя для l oop. Затем я хочу использовать эту переменную Alarm в объекте Sensor json. Однако я не мог этого. Пожалуйста, помогите мне. Как я могу создать массив сигналов и затем отправить в качестве параметра этот массив объекту датчика.

Пакет данных, который я хочу отправить, выглядит следующим образом:

  "Alarm": [
    {
      "AlarmCommunication": [
        {
          "AlarmCommunicationID": 0,
          "AlarmId": 0,
          "CommunicationTypeId": 1
        }
      ],
      "AlarmWorkingTime": [
        {
          "AlarmWorkingTimeID": 0,
          "AlarmId": 0,
          "WorkingTimeTypeId": 1
        }
      ],
      "AlarmID": 0,
      "SensorId": 0,
      "DensityTypeId": 5,
      "DurationTime": 30,
      "isActive": true
    }
  ],
    "Alarm": [
    {
      "AlarmCommunication": [
        {
          "AlarmCommunicationID": 0,
          "AlarmId": 0,
          "CommunicationTypeId": 1
        }
      ],
      "AlarmWorkingTime": [
        {
          "AlarmWorkingTimeID": 0,
          "AlarmId": 0,
          "WorkingTimeTypeId": 1
        }
      ],
      "AlarmID": 0,
      "SensorId": 0,
      "DensityTypeId": 3,
      "DurationTime": 40,
      "isActive": true
    }
  ],
  "SensorID": 0,
  "RoadId": 11,
  "GivenSensorID": "TEST",
  "LocationX": "32.55",
  "LocationY": "42.56",
  "SegmentId": 91,
  "isActive": true
}

Я попытался опубликовать его с помощью следующий код блога, но это не сработало. Где я делаю ошибку

for (var i = 1; i <= alarms.length; i++) {
        data.Alarm.AlarmCommunication.push({
            "AlarmCommunicationID": 0,
            "AlarmId": 0,
            "CommunicationTypeId": 1
        });
        data.Alarm.AlarmWorkingTime.push({
            "AlarmWorkingTimeID": 0,
            "AlarmId": 0,
            "WorkingTimeTypeId": 1
        });
        data.Alarm.push({
            "AlarmID": 0,
            "SensorId": 0,
            "DensityTypeId": 1,
            "DurationTime": 1,
            "isActive": 1,
            "AlarmCommunication": [],
            "AlarmWorkingTime": []
        });
   }
    $.ajax({
        url: '/Operation/Add',
        dataType: 'json',
        type: 'POST',
        contentType: 'application/json',
        data: JSON.stringify({
            "SensorID": 0,
            "RoadId": 5
            "GivenSensorID": 3,
            "LocationX": location_x,
            "LocationY": location_y,
            "SegmentId": SegmentID,
            "isActive": 1,
            "Alarm": []
        })
    });

1 Ответ

0 голосов
/ 09 апреля 2020

Вам не хватает комы в строке 29.

Кроме того, если это не помогает, укажите вывод консоли из браузера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...