2017-01-23 1 views
0

Я хочу, чтобы флажки определяли нужную им длину. Это может быть 11, 13, 15 или обычай, которые они могут ввести в текстовое поле. Однако, когда я тестирую, нажав один флажок, он не отображает 11, 13 или 15 (но если я наберу номер в текстовом поле, я получу эту «длину» => «число»,). Как смешивать флажок и текст для типа ввода в форме.Флажок не может получить параметр, когда я его смешивал с текстовым полем для ввода того же имени в форме

/.html.erb

<div class="form-group" id="div_checkbox2"> 
    <label class="control-label col-sm-3" for="checkbox"> 
    Length : 
    </label> 
    <div class="col-sm-8 "> 
    <label class="checkbox-inline"> 
    <input name="length" type="checkbox" value="11"/> 
    11 
    </label> 
    <label class="checkbox-inline"> 
    <input name="length" type="checkbox" value="13"/> 
    13 
    </label> 
    <label class="checkbox-inline"> 
    <input name="length" type="checkbox" value="15"/> 
    15 
    </label> 
    <label class="checkbox-inline"> 
    <input name="length" type="text" maxlength="2" style="border-radius: 5px; height: 25px; width: 25px"/> 
    custom (odd number only) 
    </label> 
    </div> 
</div> 

ответ

1

Я вижу две проблемы в этом вопросе:

  • Вы используете флажков, когда вам нужно использовать радио-кнопки. Основное различие (в использовании, а также в программировании) заключается в том, что с помощью переключателей вы можете выбрать только один из параметров и с помощью флажков вы можете выбрать столько параметров, сколько хотите (что, похоже, не так, как вы пытаетесь достичь)

  • Вы отправляете несколько параметров с использованием того же ключа. Если пользователь выбирает длину 11, 15 и my_custom_length, значения посылаются на сервер, используя следующий концептуальный формат:

    длина = 11, длина = 15, длина = my_custom_length

В этот момент сервер не знает, какое значение вы действительно хотите отправить для поля длины.

Предлагаю использовать радиокнопку с четырьмя вариантами (11, 13, 15, другое) и текстовый ввод со значением, вставленным, когда пользователь выбирает «другие» в переключателях.