0

一旦表单提交到另一个 url,我试图将用户重定向到当前网站上的新页面。

我看了这么多板来找出最好的方法。我无法修改发布的目标 URL,所以我认为 onsubmit 函数最适合将用户重定向到另一个页面。但由于某种原因,我无法弄清楚如何让重定向工作。

这是我现在拥有的代码:

<form method=post onSubmit="window.location.href='https://thankyoupage.com/'action="https:       //urltopostto.com?encoding=UTF-8"><input type="hidden" name="inquiry_from" value="website" />
    <fieldset><legend style="display: inline !important;">We Can't Wait to Hear from You</legend>
    <div><label for="first_name">First Name*</label>
    <input id="first_name" type="text" maxlength="40" name="first_name" required="" size="20" /></div>

    <div><label for="last_name">Last Name*</label>
    <input id="last_name" type="text" maxlength="80" name="last_name" required="" size="20" /></div>

    <div><label for="email">Email*</label>
    <input id="email" type="email" name="email" required="" size="20" /></div>

    <div><label for="phone">Phone*</label>
    <input id="phone" type="tel" name="phone" placeholder="(111) 111-1111" required="" size="20" /></div>
</fieldset>

<fieldset><legend>Company Information</legend>

    <div><label for="company">Organization Name*</label>
    <input id="organization" type="text" maxlength="40" name="organization" required="" size="20" /></div>
    <div>
    </fieldset>
<fieldset>

<div><label for="Inquiry">Can you provide us additional information?</label>
<textarea id="inquiry" maxlength="&quot;256" name="inquiry" rows="6" wrap="soft"></textarea>       </div>
<section><input type="submit" value="Submit" /></section></fieldset>

</form>
4

2 回答 2

1

因此,当用户提交将表单数据发布到页面(例如,“/page2”)的表单时,您正在尝试重定向到另一个页面(例如,“/page1”)。这个对吗?

如果您拥有 page2 意味着您的服务器正在提供该页面,那么您基本上可以在那里处理到 page1 的重定向。

但是,如果您不拥有该页面,则可以使用 AJAX 将表单数据发布到 page2,然后使用 jQUery 重定向到页面内的 page1

$(document).ready(function () {
  $('#submit_button_for_the_form').click(function (e) {
    // Don't do the regular form POST
    e.preventDefault();

    // Get form variables...
    var first_name = $('#first_name').val();
    var last_name = $('#last_name').val();
    ...

    // Post the form variables to page2
    $.post('/page2', {
      first_name : first_name,
      last_name : last_name,
      ...
    });

    // redirect to page1
    window.location = '/page1';  
  });
});
于 2013-10-10T03:35:42.787 回答
1

我不确定我是否正确理解了这个问题。从您发布到的文件中,这不是很容易,而且更好吗?( https://urltopostto.com )

你说你不能修改目标网址。这是否意味着您也不能向目标文件添加任何内容?

您可以将用户直接发送到感谢页面,然后从后台提交表单数据。这将是一个$$-backward,如果事情不起作用(这将是一些时髦的用户体验),你必须非常小心地警告用户,但它会起作用。

这里有很多问题。最好的办法是处理您发布到的文件。

于 2013-10-10T03:37:20.030 回答