【问题标题】:How to I change the button into hypertext in RoR如何在 RoR 中将按钮更改为超文本
【发布时间】:2010-01-08 14:50:05
【问题描述】:

这里是生成按钮的代码,但是我想要超文本,如何修改?

<% form_remote_tag (:url => { :action => :choose_category, :id => category }) do %>
  <%= submit_tag  category.name %>
<% end %>

我尝试使用link_to,但无法提交post方法,我该怎么办?

【问题讨论】:

  • link_to 可以做 POST,使用:method =&gt; :post。它使用javascript来完成它。但它不会复制帖子的远程性质。

标签: javascript ruby-on-rails


【解决方案1】:

如果我理解正确,您希望 替换 使用常规超链接(&lt;a&gt; 标记)发布代码中的提交按钮。查看link_to_remote。要了解生成的 javascript 代码,您可能还需要查看 Prototype 的 Ajax.Updater 的文档。

【讨论】:

    【解决方案2】:

    超链接无法提交 POST(至少在我所知道的任何浏览器中都没有)。表单通常是 POST 一些数据的最佳方式。

    但是,您可以在页面上创建一个表单(使用适当的方法和字段),然后使用将提交该表单的onclick 处理程序创建一个超链接。我不熟悉 RoR 给你举个例子,但它应该是对标准超链接生成函数的一个微不足道的改变。

    (请注意,onclick 处理程序应返回 false 以防止链接本身被跟踪;理想情况下,如果人们禁用了 Javascript,超链接的 href 将转到某个可接受的页面。)

    【讨论】:

      【解决方案3】:

      从技术上讲,链接不能提交表单。这意味着您仅限于使用 javascript,请查看 link_to_function。您需要您要提交的表单的id,然后您可以编写一些javascript,例如:

      $('the_forms_id').submit(); return false;
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-11-07
        • 2013-04-15
        • 1970-01-01
        • 2021-07-11
        • 2013-11-09
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多