将 Rails 表单转换为 AJAX 表单的简单方法?

发布于 2024-09-27 19:23:46 字数 835 浏览 1 评论 0原文

我的 Rails 应用程序中有以下表单:

<% form_tag password_resets_path, :id => 'recoverPasswordForm' do %>
  <label for="passwordRecoveryEmailAddress">Email Address:</label>&nbsp;
  <%= text_field_tag "passwordRecoveryEmailAddress" %>
  <%= submit_tag 'Recover' %>

  <br />

  <div id="forgotPasswordLoginLinkContainer">
    <a id="forgotPasswordLoginLink" href="/login">Login Instead</a>
  </div>
<% end %>

提交此表单时,必须重新加载页面。我想轻松地将此表单转换为 AJAX 表单,以便该表单通过 AJAX 提交,并且不会发生页面重新加载。

我可以使用 jQuery 轻松完成此操作,连接到 .submit() 函数。但是,我很好奇:Rails 是否提供了一些简单的方法将任何给定的表单转换为 AJAX 表单?或者,最简单(但优雅)的方法是什么?也许就像

<% form_tag password_resets_path, :id => 'recoverPasswordForm', :ajax => true do %>

我正在使用 Rails 2 一样。

I have the following form in my Rails application:

<% form_tag password_resets_path, :id => 'recoverPasswordForm' do %>
  <label for="passwordRecoveryEmailAddress">Email Address:</label> 
  <%= text_field_tag "passwordRecoveryEmailAddress" %>
  <%= submit_tag 'Recover' %>

  <br />

  <div id="forgotPasswordLoginLinkContainer">
    <a id="forgotPasswordLoginLink" href="/login">Login Instead</a>
  </div>
<% end %>

When this form is submitted, the page must reload. I would like to easily turn this form into an AJAX form, such that the form submits via AJAX, and a page reload does not happen.

I could do this easily using jQuery, hooking into the .submit() function. But, I am curious: does Rails provide some easy way to turn any given form into an AJAX form? Or, what's the simplest (yet elegant) way possible? Maybe something like

<% form_tag password_resets_path, :id => 'recoverPasswordForm', :ajax => true do %>

I'm using Rails 2.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

甚是思念 2024-10-04 19:23:46

是的,你的猜测很接近。 Rails 3 允许您执行 form_tag ..., :remote =>; true 让表单使用 AJAX(如果 Javascript 可用)。

请参阅 http://railsapi.com/doc/ Rails-v3.0.0/classes/ActionView/Helpers/FormTagHelper.html#M002483

Yes, and you were close with your guess. Rails 3 allows you to do form_tag ..., :remote => true to let the form use AJAX if Javascript is available.

See http://railsapi.com/doc/rails-v3.0.0/classes/ActionView/Helpers/FormTagHelper.html#M002483

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文