表单提交时URL中的锚点标签被剥离

6

自由表单版本: 4.07 ExpressionEngine v2.5.3 - Build Date: 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> 
1个回答

5

您可以使用jQuery解决这个问题:

  1. 检查是否存在类名为“error”
  2. 如果存在:打开带有表单的选项卡
  3. 否则:不做任何操作

示例代码如下:

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

祝你好运!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接