2010-01-08 38 views
0

下面是生成按钮的代码,但我希望它在超文本中,如何修改?如何将按钮更改为RoR中的超文本

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

我试图用link_to,但不能提交POST方法,我该怎么办?

+0

'link_to'可以做POST,使用':method =>:post'。它使用JavaScript来完成它。它不会复制该帖子的偏远性质。 – jamuraa

回答

2

如果我理解正确的话,你想替换在发布代码的提交按钮与一个普通的超链接(<a>标签)。检查出link_to_remote。要了解生成的JavaScript代码,您可能还需要查看Prototype的文档Ajax.Updater

0

超级链接无法提交POST(不是在我知道的任何浏览器中,至少)。表单通常是发布某些数据的最佳方式。

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

(请注意,onclick处理应当返回false防止链路本身被跟踪;和理想的超链接的href会去一些可以接受的页面,如果人们已禁用JavaScript)

0

链接不能在技术上提交表格。这意味着你仅限于JavaScript,请检查link_to_function。你需要要提交,然后你可以写一些JavaScript等形式的id

$('the_forms_id').submit(); return false; 
相关问题