FROM CACHE - jp_header
このコミュニティはピアツーピアサポートに移行しました。Shopify サポートは今後、このコミュニティへのサービスを提供いたしません。これからもぜひ、他のマーチャントやパートナーとつながり、サポートし合い、経験を共有してください。 当社の行動規範に違反する行動や削除を希望するコンテンツがありましたら、引き続きご報告ください

フォームでエラーになった際に入力値を保持したい

解決済

フォームでエラーになった際に入力値を保持したい

ks6
訪問者
2 0 0

とても初歩的な事で恐れいります。

register.liquid にて新規会員登録画面を作成中です。

会員登録時、エラーが出た際に画面がリロードされ、入力値がクリアされてしまいます。

この入力値を保持したいのですが、うまくいきません。


register.liquid のコードは以下のとおりです。

 

 

{% form 'create_customer' %}
  {{ form.errors | default_errors }}
  <div>
    <div>
      <label for="last_name">性</label>
      <input
        type="text"
        {% if form.last_name %}value="{{ form.last_name }}"{% endif %}
        name="customer[last_name]"
        required
      >
    </div>
    <div>
      <label for="first_name">名</label>
      <input
        type="text"
        {% if form.first_name %}value="{{ form.first_name }}"{% endif %}
        name="customer[first_name]"
        required
      >
    </div>
  </div>
  <div>
    <label for="email">メールアドレス</label>
    <input
      type="email"
      {% if form.email %} value="{{ form.email }}"{% endif %}
      name="customer[email]"
      required
    >
    <label for="password">パスワード</label>
    <input
      type="password"
      value=""
      name="customer[password]"
    >
  </div>
  <input type="submit" value="新規会員登録">
{% endform %}

 

 

 

{{ form.last_name }} で入力値を引き継げるものと思ったのですが、
引き継げず、{{ form | json }} で中身を見てみると

 

 

{"first_name":null,"last_name":null,"email":null,"password":null,"errors":["password"]}​

 

 

と表示され、null になっているようです。
解決方法をご存知の方がいらっしゃいましたら、アドバイスいただけますと幸いです。

 

1 件の受理された解決策

株式会社フルバランス
Shopify Partner
1595 570 730

成功

Shopifyの多くのテーマがJavaScriptでエラー制御をすることで対応をしている部分に思います。

データ登録後エラー制御をされたい部分に理由はありますでしょうか?

株式会社フルバランス(Shopify Experts)
Shopify専門のEC成長支援会社です。ストアの新規構築から運用や改善のサポートなどShopifyに関する幅広いサービスを行なっております。
ECの技術・実務・成長、お悩みのことがあれば、お気軽にご相談ください。
『すべてのブランドの特大成長エンジンを搭載する』 株式会社フルバランス

元の投稿で解決策を見る

2件の返信2

株式会社フルバランス
Shopify Partner
1595 570 730

成功

Shopifyの多くのテーマがJavaScriptでエラー制御をすることで対応をしている部分に思います。

データ登録後エラー制御をされたい部分に理由はありますでしょうか?

株式会社フルバランス(Shopify Experts)
Shopify専門のEC成長支援会社です。ストアの新規構築から運用や改善のサポートなどShopifyに関する幅広いサービスを行なっております。
ECの技術・実務・成長、お悩みのことがあれば、お気軽にご相談ください。
『すべてのブランドの特大成長エンジンを搭載する』 株式会社フルバランス
ks6
訪問者
2 0 0

ご回答いただきありがとうございます。

JavaScriptで制御することが一般的なのですね。

他のテーマをよく見てみるべきでした。

サーバー側にてエラー制御をしたい理由は特にありませんので、

他のテーマを参考にしつつ、JavaScriptでの対応したいと思います。

ご親切なアドバイスに感謝いたします。