下面是生成按鈕的代碼,但我希望它在超文本中,如何修改?如何將按鈕更改爲RoR中的超文本
<% form_remote_tag (:url => { :action => :choose_category, :id => category }) do %>
<%= submit_tag category.name %>
<% end %>
我試圖用link_to
,但不能提交POST方法,我該怎麼辦?
下面是生成按鈕的代碼,但我希望它在超文本中,如何修改?如何將按鈕更改爲RoR中的超文本
<% form_remote_tag (:url => { :action => :choose_category, :id => category }) do %>
<%= submit_tag category.name %>
<% end %>
我試圖用link_to
,但不能提交POST方法,我該怎麼辦?
如果我理解正確的話,你想替換在發佈代碼的提交按鈕與一個普通的超鏈接(<a>
標籤)。檢查出link_to_remote。要了解生成的JavaScript代碼,您可能還需要查看Prototype的文檔Ajax.Updater。
超級鏈接無法提交POST(不是在我知道的任何瀏覽器中,至少)。表單通常是發佈某些數據的最佳方式。
但是,您可以做的是在您的頁面上創建一個表單(使用適當的方法和字段),然後使用將提交表單的處理程序創建一個超鏈接。我不熟悉RoR給你一個例子,但它應該是標準的超鏈接生成函數的微不足道的變化。
(請注意,onclick處理應當返回false
防止鏈路本身被跟蹤;和理想的超鏈接的href
會去一些可以接受的頁面,如果人們已禁用JavaScript)
鏈接不能在技術上提交表格。這意味着你僅限於JavaScript,請檢查link_to_function
。你需要要提交,然後你可以寫一些JavaScript等形式的id
:
$('the_forms_id').submit(); return false;
'link_to'可以做POST,使用':method =>:post'。它使用JavaScript來完成它。它不會複製該帖子的偏遠性質。 – jamuraa