追加した会員登録時の入力項目を、記入必須にしたいです。
住所などの会員登録時の入力項目は、
コードを編集することで増やすことはできました。
しかしこれらの項目を記入必須にする方法が分かりません。
調べましたが、出てきませんでした。
コードを編集することで、
追加した項目を必須にすることはできるのでしょうか?
もし可能でなのであれば、そのコードを教えていただますと幸いです。
住所の項目を追加するために、下記のコードを追加しました。
「お客様に関するメモ」の欄に格納される状態です。
住所
メールアドレスとパスワード以外は、
空欄の状態にしたままでも登録することができてしまいます。
他の項目も空欄のときにエラーとなるように編集したいです。
どうぞよろしくお願いいたします。
1 Like
こちらで回答させて頂いているとおり、requiredを付ければ必須になるかと思います。
https://community.shopify.com/post/1286605
AraiTakayukiさん
ご返答くださり、ありがとうございます。
requiredを付けてみましたが、できませんでした。
住所
教えていただいた掲示板にあったコードをそのままコピペしてみましたが、
こちらもなぜかできませんでした。
共有いただいていたリンク先に、「関連付けされたにnovalidateが設定された場合、required属性は無効になります。」との記述がありました。
コードをよく見ると、novalidateの記述がありました。
{%- form ‘create_customer’, class: ‘form’, data-form: ‘’, novalidate: ‘novalidate’ -%}
liquidがよくわかっていないのでどう対応すればいいか、
ご教授いただけますと幸いです。
{%- form ‘create_customer’, class: ‘form’, data-form: ‘’, novalidate: ‘novalidate’ -%}の中の、
novalidate: 'novalidate’を消去して、
それぞれのinput要素の中にrequiredを付け加えるとできました!
ただ、メールやパスワードを入れなかった場合は、
デフォルトのままエラーが出て、
他の入力情報が全て消去されてしまいます。
できればメールやパスワードも形式を合わせたいとも思うのですが、
動的な動作が入るため、壊れてしまうことが怖くて触れません。
メールやパスワードのコードをいじっても大丈夫なものなのでしょうか?
・メール部分のコード
{{ '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 -%}
お手数をおかけしますが、どうぞよろしくお願いいたします。