3

我正在我的网站上做一个简单的登录表单。情况如下:

  • 如果我执行纯 Jquery AJAX 表单提交然后重定向(在 JS 代码中),浏览器不会提供保存信息(即用户名和密码)。
  • 如果我进行正常的表单提交,当我进入下一页并返回或刷新时,我会感到非常恼火和烦人的“确认表单提交”。

我的问题是,有可能两全其美吗?如果是,如何?

明确地说,我想做一个表单提交,最好使用 AJAX,这样如果出现错误,我不必重新加载页面并只显示错误,我希望浏览器提供保存信息的可能性而且我不希望重定向页面上的“确认表单提交”。

我想在中间添加一个页面,所以提交到一个空白页面,它只是重定向到我想去的页面。但是一旦你到达那里,如果你回击,你会被重定向到同一页面,所以你点击了 2 次。其他人是这样的吗?

谢谢你的帮助。

PS:我看过所有这些帖子......

PPS:似乎提交到 iframe 不再适用于现代浏览器。

4

1 回答 1

0

为此,您需要一个格式良好的 HTML 表单元素,包括方法和操作,以及一个submit按钮,如下所示:

<form method="post" action="login.xxx" onsubmit="return validate();">
  <input type="text" id="username" />
  <input type="password" id="password" />

  <input type="submit" value="Send" />
</form>

之后,将所有内容处理到validatejavascript 方法中,阻止您的表单发布(无论如何这将在非 javascript 环境中工作)并改用 ajax:

function validate() {
  // Ajax request using gathered form data, followed by a redirect to the logged-in page

  return false; // To prevent form submission
}

这样,您的登录信息应该被保存。对于“确认表单提交”消息,它不会出现,因为如果登录信息正常,您将执行 javascript 重定向。

于 2013-04-23T17:59:34.033 回答