Входные данные формы HTML создают массив массивов - PullRequest
0 голосов
/ 04 октября 2019

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

 <input type="text" name="options[name][]" value ="Name" />
 <input type="text" name="options[selling_price][]" value = "10" />

 <input type="text" name="options[name][]" value ="Name 2" />
 <input type="text" name="options[selling_price][]" value = "20" />

...

Когда я обрабатываю это на сервере, я получаю:

"options" => array:2 [▼
    "name" => array:2 [▼
      0 => "Name"
      1 => "Name 2"
    ]
    "selling_price" => array:2 [▼
      0 => "10"
      1 => "20"
    ]

Я хотел бы получить следующее:

array:2 [▼
  0 => array:2 [▼
    "name" => "Name"
    "selling_price" => 10
  ]
  1 => array:2 [▼
    "name" => "Name 2"
    "selling_price" => 20
  ]
]

Возможно ли это в html и сделать его динамичным, чтобы я мог продолжать добавлять их в javascript?

Единственный способ, которым я нашел это сделатьэто сделать счетчик переменной и сделать options[counter][name]

1 Ответ

0 голосов
/ 04 октября 2019

Способ, которым вы пришли, добавив счетчик в имя, является правильным. Не существует встроенного способа автоматического увеличения счетчика при группировании определенных полей формы. Поэтому вам придется отслеживать текущий счетчик и увеличивать его, а также помещать в атрибут name при добавлении нового набора полей.

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