6

フリーフォームバージョン:4.07 ExpressionEngine v2.5.3-ビルド日:20120911

jQueryタブ内に自由形式のフォームがあります。フォームがエラーで送信されると、そのタブのアンカーがURLから削除されます。これにより、フォームが含まれているタブではなく、最初のタブに戻ります。ユーザーをフォームタブにリダイレクトする方法はありますか?

ありがとう

<li id="qaTab">
  {exp:freeform:form
  form_id="2"
  required="name|email|user_message"
  return="contact_us/thank_you"
  recipients="yes"
  recipient1="Happy Harry|h_harry@somemail.com"
  recipient2="Lazy Larry|lazyl63@somemail.com"
  recipient_template="contact_form"
  notify_user="yes"
  user_email_field="user_email"
  inline_errors="yes"
  }
   {if freeform:general_errors}
    <h2>There were some error(s) with your submission:</h2>
   <ul>
   {freeform:general_errors}
    <li>{freeform:error_message}</li>
   {/freeform:general_errors}
   </ul>
   {/if}
   <div class="row">
    <div class="six columns">
     <label>{freeform:label:name}</label>
     {freeform:field:name}
     {if freeform:error:name}<small class="error">{freeform:error:name}</small>{/if}
    </div>
    <div class="six columns">
     <label>{freeform:label:email}</label>
     {freeform:field:email}
     {if freeform:error:email}<small class="error">{freeform:error:email}</small>{/if}
    </div>
   </div>
   {freeform:label:user_message}
   {freeform:field:user_message}
   {if freeform:error:user_message}
   <small class="error">{freeform:error:user_message}</small>{/if}
   <input type="hidden" name="subject" value="{title}" id="subject">
   <input type="submit" name="submit" value="Submit" id="submit" class="button">
  {/exp:freeform:form}
 </li> 
4

1 に答える 1

5

jQuery を使用して、次の方法でこれを解決する必要があります。

  1. クラスエラーの有無の確認
  2. 存在する場合: フォームでタブを開きます
  3. それ以外: 何もしない

これは次のようになります。

if ($(".error").length > 0) {  
    $("#tabs").tabs("select", "#qaTab");
}

幸運を!

于 2012-10-22T18:39:45.527 に答える