Я использую этот код для получения объекта входных имен полей и значений для передачи в функцию AJAX.
var fields = {};
$("#wrap").find(":input").each(function() {
fields[this.name] = $(this).val();
});
var obj = {fields: fields};
AJAX-вызов функции PHP
var data = {
'action': 'my_function',
'fields': obj,
};
jQuery.post( ajaxurl, data, function( response ) {
console.log(response);
});
Поля:
<div id="wrap">
<input type="number" min="0" name="my_array[123][somelabel]" value="">
<input type="number" min="0" name="my_array[456][somelabel]" value="">
</div>
PHP просто делает:
print_r( $_POST['fields'] );
Результат и мой ожидаемый результат
В журнале консоли ответа это возвращает массив с первым ключом полей как my_array[123
Я ожидаю, что это будет my_array[123]
- почему он пропускает последние ]
?