按提交后,在特定数据部分加载网站


Load a website in a specific data-section after press submit

出现问题:

我有一个网站,它只包含一个页面中的所有部分,所以它是一个大型网站,我有一份几乎在网站底部带有reCaptcha的公式集,因此,当人们没有输入好的captcha并按下submit时,它会再次加载网站,但它会到达网站的顶部,因此人们会迷路,因为他们不知道邮件是否已发送或发生了什么,因为他们必须向下滚动才能看到警告信息,即他们没有输入正确的captcha。

问题是,当他们按下提交按钮时,有没有办法将网站加载到特定的部分?在这种情况下,"菜单3"部分

这就是我所拥有的:

<section  id="menu3"> </section>
      <form action="?done=1" method="post" name="myphpform" id="myphpform"   >
      <input type="text" id="nombre" class="form-control" name="nombre" placeholder="Escribe tu nombre"  required value="<?php if (!empty($_POST['nombre'])) { echo $_POST['nombre']; } ?>" />
      <input type="text" id="telefono" class="form-control" name="telefono" placeholder="Teléfono y/o celular"   value="<?php if (!empty($_POST['telefono'])) { echo $_POST['telefono']; } ?>" />
      <input type="email" id="email" class="form-control" name="email" placeholder="Escribe tu e-mail"  required   value="<?php if (!empty($_POST['email'])) { echo $_POST['email']; } ?>" />
      <textarea name="comentarios"   id="comentarios"  class="form-control"   placeholder="Comentarios y/o preguntas" required  /><?php if (!empty($_POST['comentarios'])) { echo $_POST['comentarios']; } ?></textarea>
      <input name="submit" type="submit" class="btn btn-info" value="Enviar" />
      </form> 

和php:

<?php
            @require_once('recaptchalib.php');
            $publickey = "";
            $privatekey = "";
            $resp = null;
            $error = null;
            if ($_POST["submit"]) {
           $resp = recaptcha_check_answer ($privatekey,
                              $_SERVER["REMOTE_ADDR"],
                              $_POST["recaptcha_challenge_field"],
                              $_POST["recaptcha_response_field"]);
                              if ($resp->is_valid) {
                              $to="mail@mail";
                              $subject="Contacto";
                              $body="Contacto:
                              Nombre: " .$_POST["nombre"] . "'n
                              Empresa: " .$_POST["empresa"] . "'n
                              Ubicacion: " .$_POST["ubicacion"] . "'n
                              Telefono: " .$_POST["telefono"] . "'n
                              E-mail: " .$_POST["email"] . "'n
                              Comentarios: " .$_POST["comentarios"] . "'n"; 
                              mail($to,$subject,$body, null, '-fmail@mail.mx');
                              $resultMenuUrlName = "contacto_gracias.html";
                              echo "<META HTTP-EQUIV=Refresh CONTENT=0;URL=$resultMenuUrlName>";
                              exit(1);
                              } else {
                                  echo "Lo sentimos pero no ha colocado el texto correctamente! Intente nuevamente...";
                                  }
                              }
                              echo recaptcha_get_html($publickey, $error);
                              ?>

建议中的thx

您可以使用命名锚点:

然后制作url:http://myurl.com#value

好吧,我终于找到了如何在所有网站加载后转到该部分,因为在一开始我的网站有一点动画,也许不是最好的解决方案,但它对我有效。我只是将它添加到php:

echo "<script type=''>
setTimeout(function() {
window.location = '#anchor';
}, 7000);
</script>";