# 追加した会員登録時の入力項目を、記入必須にしたい

**URL:** <https://community.shopify.com/t/topic/92159>\
**Category:** 総合的なディスカッション\
**Created:** [January 18, 2022, 8:34am UTC](https://community.shopify.com/t/topic/92159 "2022-01-18T08:34:01Z")\
**Posts on this page:** 4\
**Page:** 1

## AI-generated summary

会員登録フォームで追加した入力項目（住所など）を必須化したいという相談。追加自体は実装済みだが、必須化が効かない問題が発生。

・原因と対応：
- input に required を付けても効かなかったのは、フォームに novalidate が指定されていたため（HTML5 のブラウザ検証を無効化）。
- Liquid の {%- form 'create_customer' ... novalidate: 'novalidate' -%} から novalidate を削除し、各 input に required を付与して解決。

・新たな課題：
- メールまたはパスワード未入力時、Shopify の既定エラーが出ると他の入力値が消えてしまう。
- メール・パスワードの検証や表示形式を他項目と合わせたいが、動的挙動を壊す懸念があり安全に編集できるか不明。
- 該当コード（email/password の input とエラー表示）は提示済みだが、値保持（value の復元）方法や編集可否の具体案は未提示。

・現状：
- 追加項目の必須化は達成。
- メール／パスワードのバリデーション調整と、エラー時に他項目の入力値を保持する方法については未解決で、回答保留。

<div class="post-metadata">

**Author:** ![yuicham](https://avatars.discourse-cdn.com/v4/letter/y/a88e4f/32.png) [@yuicham](https://community.shopify.com/u/yuicham)\
**Post date:** [January 18, 2022, 8:34am UTC](https://community.shopify.com/t/topic/92159/1 "2022-01-18T08:34:01Z")

</div>

追加した会員登録時の入力項目を、記入必須にしたいです。

住所などの会員登録時の入力項目は、  
コードを編集することで増やすことはできました。  
しかしこれらの項目を記入必須にする方法が分かりません。

調べましたが、出てきませんでした。

コードを編集することで、  
追加した項目を必須にすることはできるのでしょうか？

もし可能でなのであれば、そのコードを教えていただますと幸いです。

住所の項目を追加するために、下記のコードを追加しました。

「お客様に関するメモ」の欄に格納される状態です。

住所​

メールアドレスとパスワード以外は、  
空欄の状態にしたままでも登録することができてしまいます。  
他の項目も空欄のときにエラーとなるように編集したいです。

どうぞよろしくお願いいたします。

---

<div class="post-metadata">

**Author:** ![AraiTakayuki](https://yyz1.discourse-cdn.com/shopifyforum/user_avatar/community.shopify.com/araitakayuki/32/373207_2.png) [@AraiTakayuki](https://community.shopify.com/u/AraiTakayuki)\
**Post date:** [January 18, 2022, 3:56pm UTC](https://community.shopify.com/t/topic/92159/2 "2022-01-18T15:56:45Z")

</div>

こちらで回答させて頂いているとおり、requiredを付ければ必須になるかと思います。

[https://community.shopify.com/post/1286605](https://community.shopify.com/post/1286605)

---

<div class="post-metadata">

**Author:** ![yuicham](https://avatars.discourse-cdn.com/v4/letter/y/a88e4f/32.png) [@yuicham](https://community.shopify.com/u/yuicham)\
**Post date:** [January 19, 2022, 6:29am UTC](https://community.shopify.com/t/topic/92159/3 "2022-01-19T06:29:26Z")

</div>

[AraiTakayuki](https://community.shopify.com/user/663785)さん  
ご返答くださり、ありがとうございます。

requiredを付けてみましたが、できませんでした。

住所​

教えていただいた掲示板にあったコードをそのままコピペしてみましたが、

こちらもなぜかできませんでした。

共有いただいていたリンク先に、「関連付けされたに[novalidate](https://web-designer.cman.jp/html_ref/attr/?a=novalidate)が設定された場合、required属性は無効になります。」との記述がありました。  
コードをよく見ると、novalidateの記述がありました。  
{%- form ‘create\_customer’, class: ‘form’, data-form: ‘’, novalidate: ‘novalidate’ -%}

liquidがよくわかっていないのでどう対応すればいいか、

ご教授いただけますと幸いです。

 ![スクリーンショット 2022-01-19 15.22.43.png](https://canada1.discourse-cdn.com/shopifyforum/original/3X/8/c/8c0177f44dc39f62d036e9d7ed901ba25446e047.png)

---

<div class="post-metadata">

**Author:** ![yuicham](https://avatars.discourse-cdn.com/v4/letter/y/a88e4f/32.png) [@yuicham](https://community.shopify.com/u/yuicham)\
**Post date:** [January 19, 2022, 7:35am UTC](https://community.shopify.com/t/topic/92159/4 "2022-01-19T07:35:37Z")

</div>

{%- form ‘create\_customer’, class: ‘form’, data-form: ‘’, novalidate: ‘novalidate’ -%}の中の、

novalidate: 'novalidate’を消去して、

それぞれのinput要素の中にrequiredを付け加えるとできました！

 ![スクリーンショット 2022-01-19 16.16.30.png](https://canada1.discourse-cdn.com/shopifyforum/original/3X/6/2/62b87d5376f3a5c4bab14acfd45bfbdad15f5ba9.png)

ただ、メールやパスワードを入れなかった場合は、

デフォルトのままエラーが出て、

他の入力情報が全て消去されてしまいます。

 ![スクリーンショット 2022-01-19 16.18.15.png](https://canada1.discourse-cdn.com/shopifyforum/original/4X/a/6/8/a6892ba35752a6172c6c99e0bfa289598c519889.png)

できればメールやパスワードも形式を合わせたいとも思うのですが、

動的な動作が入るため、壊れてしまうことが怖くて触れません。

メールやパスワードのコードをいじっても大丈夫なものなのでしょうか？

・メール部分のコード

{{ 'customer.register.email' | t }} {%- if form.errors contains 'email' -%} {{ 'general.accessibility.error' | t }} {% include 'icon-error' %} {{ form.errors.translated\_fields['email'] | capitalize }} {{ form.errors.messages['email'] }}. {%- endif -%}

・パスワード部分のコード

{{ 'customer.register.password' | t }} {%- if form.errors contains 'password' -%} {{ 'general.accessibility.error' | t }} {% render 'icon-error' %} {{ form.errors.translated\_fields['password'] | capitalize }} {{ form.errors.messages['password'] }}. {%- endif -%}

お手数をおかけしますが、どうぞよろしくお願いいたします。
