Как собрать входные значения с разными именами? - PullRequest
0 голосов
/ 14 января 2012

У меня есть 3 выпадающих выбора и один текстовый ввод.Я думаю, что недопустимо делать все имена одинаковыми, поэтому каждый вход имеет свое имя, хотя я могу сделать так, чтобы все они начинались с одной и той же строки.В форме отправки я хочу объединить все входные значения в одно.Я могу думать только о создании скрытого ввода для сбора значений, но я не знаю, как его кодировать.Пожалуйста, помогите!

<ul>
    <li>
        <select id="input-first_dropdown" name="property-first_dropdown">
                <option>Option 1</option>
                <option>Option 2</option>
                <option>Option 3</option>
        </select>
    </li>
    <li>
        <select id="input-second_dropdown" name="property-second_dropdown">
                <option>Option 1</option>
                <option>Option 2</option>
                <option>Option 3</option>
        </select>
    </li>
    <li>
        <textarea id="input-textarea" name="property-textarea">test</textarea>
    </li>
</ul>

Ответы [ 2 ]

1 голос
/ 14 января 2012

Вы можете иметь одно и то же значение атрибута name для разных полей ввода (но не одно и то же значение id).Затем данные будут отправлены таким образом, что существует несколько пар имя = значение с одинаковым именем.Будь и как ты справишься с этой серверной стороной - это другой вопрос.Обычно проще использовать разные имена.При обработке на стороне сервера вы можете комбинировать данные по своему усмотрению.

Вы не можете надежно комбинировать поля ввода «при отправке формы», то есть на стороне клиента.Хотя это было бы легко сделать в JavaScript, в этом нет никакого смысла, поскольку не следует полагаться на то, что JavaScript включен в браузере.

0 голосов
/ 14 января 2012

вы можете сделать так:

<ul>
    <li>
    <select id="input-first_dropdown" name="property[]">
        <option>Option 1</option>
        <option>Option 2</option>
        <option>Option 3</option>
    </select>
    </li>
    <li>
    <select id="input-second_dropdown" name="property[]">
        <option>Option 1</option>
        <option>Option 2</option>
        <option>Option 3</option>
    </select>
    </li>
    <li>
    <textarea id="input-textarea" name="property[]">test</textarea>
    </li>
</ul>

попробуйте print_r($_POST['property']) в вашем процессоре форм

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