действительно ли возможно дважды вложить входные массивы тега в HTML?

Я задаюсь вопросом, прежде чем я попытаюсь осуществить рефакторинг свою страницу если его возможное, чтобы иметь двойной вложенный входной массив в HTML. Я имею 8X5 группа элементов в форме, и это было бы хорошо, чтобы я смог проанализировать ее с помощью массива массивов... что-то как

    <input type="text" name="list[][]" /><input type="checkbox" name="list[][]" /> 

и так далее

8
задан Matt Phillips 30 December 2009 в 06:22
поделиться

2 ответа

Вам нужно будет поставлять индексы в первую часть каждого поля, иначе гнездиться некуда, а если бы это работало, то это не выглядело бы как сетка на другом конце:

Строка 1:

 name="list[0][]"

Строка 2:

 name="list[1][]" 

и т.д.

Наконец, ваш сервер должен поддерживать это, как это делают PHP и Rails вне коробки. Я не уверен насчет других серверных технологий. Например, следующий HTML при размещении в PHP:

<form action="post.php" method="POST" accept-charset="utf-8">
  <input type="text" name="list[0][]" value="1" />
  <input type="text" name="list[0][]" value="2" />
  <input type="text" name="list[0][]" value="3" />

  <input type="text" name="list[1][]" value="4" />
  <input type="text" name="list[1][]" value="5" />
  <input type="text" name="list[1][]" value="6" />

  <input type="text" name="list[3][]" value="7" />
  <input type="text" name="list[3][]" value="8" />
  <input type="text" name="list[3][]" value="9" />

  <input type="submit" name="Send" value="Send" id="Send" />
</form>

Если в PHP существует следующий код:

<?php print_r($_POST['list']); ?>

Вывод:

Array
(
    [0] => Array
        (
            [0] => 1
            [1] => 2
            [2] => 3
        )

    [1] => Array
        (
            [0] => 4
            [1] => 5
            [2] => 6
        )

    [3] => Array
        (
            [0] => 7
            [1] => 8
            [2] => 9
        )

)
14
ответ дан 5 December 2019 в 12:09
поделиться

HTML позволяет иметь несколько входов с одним и тем же именем, которые посылаются на сервер через POST или GET в виде массива, разделенного запятыми, которые больше всего (все? ) серверные языки распознаются как родной массив.

Нет никакого родного способа создать многомерный массив с чистым HTML без того, чтобы Вы сами откатили что-то с помощью javascript.

.
0
ответ дан 5 December 2019 в 12:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: