2016-07-25 6 views
0

С Фондом 6 и пребываю я хочу иметь этот тег в простой форме форме:останься Обязательный тег в простой-форме без «данных-»

<input class="string optional" pattern="text" type="text" name="service[street_address]" id="service_street_address" required> 

с атрибутом required.

Я попытался это:

<%= service.input_field :street_address, data: {:required => ''}, pattern:"text" %> 

но required тег становится data-required и перерывы останься проверки:

<input data-required="" class="string optional" pattern="text" type="text" name="service[street_address]" id="service_street_address"> 

Есть ли способ, чтобы иметь только required или required=""?

ответ

1

При необходимости: true не работает, попробуйте:

<%= service.text_field :postal_box, required: "required", pattern: "text" %>

0

«Обязательный» становится «необходимым для передачи данных», потому что вы поместили его внутри данных: {}. Какие данные: {} делает для вас создание тегов data- *. Поэтому неудивительно, что конечный ввод «требуется для данных». Если вы ищете «требуется», вы используете неправильный метод.

С нормальным form_for тега, вы можете передать атрибуты в качестве опции в хэш, например, так:

<%= service.input_field :street_address, required: true, pattern:"text" %>

С simple_form, потому что simple_form создает оболочку и метки автоматически, вы должны уточнить что вы добавляете атрибут в ввода, например, так:

<%= service.input_field :street_address, input_html: { required: true }, pattern:"text" %>

Я считаю, что в вашем случае, inpu t_field - это form_for, а не тег simple_form. Поэтому попробуйте первый метод, и если он не работает, попробуйте второй.

(В качестве примечания, вы заметите, что вход производит имеет этот HTML:

<input required="required">

вместо:

<input required>

Но это точно так же,)

+1

Спасибо Samy за ваш ответ, я пробовал оба метода, но первые результаты в классе = "string required", а второй в input_html = "{: required => true}" –

 Смежные вопросы

  • Нет связанных вопросов^_^