簡體   English   中英

Ruby on Rails:如何使用form_tag指定html ID

[英]Ruby on Rails: how do you specify an html ID with the form_tag

我正在使用form標記,並且我希望結果像這樣:

<form action="controller/action" id="myID">

我現在有這個

<% form_tag :action => '', :id=>"relative_date_filter" do |f| %>

生成此:

<form action="/controller/relative_date_filter" method="post">

編輯:
我目前收到此錯誤:

compile error
/app/views/controller/filters/_relative_time.html.erb:1: syntax error, unexpected tASSOC, expecting '}'
...e=true ;  form_tag {:action => ''}, {:id => "relative_date_f...
                              ^
/app/views/controller/filters/_relative_time.html.erb:1: syntax error, unexpected ',', expecting kEND
...e ;  form_tag {:action => ''}, {:id => "relative_date_filter...
                              ^
/app/views/controller/filters/_relative_time.html.erb:1: syntax error, unexpected kDO, expecting kEND
... => "relative_date_filter"} do ; @output_buffer.concat "\n  ...
                              ^
/app/views/controller/filters/_relative_time.html.erb:14: syntax error, unexpected kENSURE, expecting $end
Extracted source (around line #1):

1: <% form_tag {:action => ''}, {:id => "relative_date_filter"} do %>

在這里,很奇怪的是,在文件末尾沒有第14行。 我添加了一個返回值,並將其更改為第15行。我之前的代碼確實導致了語法錯誤。

這應該工作:

<% form_tag({:action => ''}, {:id => "relative_date_filter"}) do |f| %>

form_tag的第一個參數是url,這就是為什么您看到為此使用“ relative_date_filter”的原因。 我認為其他選項可以允許您指定ID。

<% form_tag({:action => ''}, {:id => 'relative_date_filter'}) do |f| %>

第一個哈希是url,第二個是任何其他選項。 例如,如果您想要發布以外的任何內容,也可以在這里提供form方法。

<%= form_tag ({:controller => 'public', :action => 'search'}), ({:class => "round_corners_8"}) do %>

這個在Rails 3.0中為我工作

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM