2

私は現在link_toを使用しています:

<%= link_to edit_webcast_path(@webcast), :class => 'btn'  do %>
    <i class="icon-pencil"></i> Edit Webcast
<% end %>

ただし、button_toでも同じことを行いたいのですが、button_toには最初のlabel引数を渡す必要があります。そうしないと、パスがラベルとして使用されます。

<%= button_to edit_webcast_path(@webcast), :class => 'btn'  do %>
    <i class="icon-pencil"></i> Edit Webcast
<% end %>

...解決されたedit_webcast_path(@webcast)パスであるラベルの付いたボタンが表示されます。事実上、効果がないようです。

私は最初の引数としてhtmlを直接渡してみました:

<%= button_to "<i class=\"icon-white icon-minus-sign \"></i> Edit Webcast".html_safe, webcast_path(@webcast), :class => 'btn'%>

ただし、これにより、渡したhtml文字列の一部を表示するラベルが付いたボタンが表示されます。生成されたHTM1を見ると、この最初の引数の内容が入力自体の内部ではなく、入力のvalue属性に配置されていることがわかります。

どうすればこれを機能させることができますか?

4

4 に答える 4

2

Railsは、1つではなくbutton_tohtml<input type="submit">要素を含むフォームを生成し<button>ます。<button>あなたはそれをオーバーライドするか、生成するためにあなた自身のヘルパーを書くことを試みることができます、この例を見てください

于 2012-06-05T17:03:50.157 に答える
0

Railsでは、button_toは投稿または配置を試みます。したがって、実際には「通常の」ボタンではありません。リンクのスタイルを設定して、ボタンのように表示および動作させることができます。

于 2012-06-06T16:35:46.663 に答える
0

button_to次のような要素内にHTMLを追加できます。

<%= button_to "New", new_articles_path do %>
  Create a <strong>new article</strong>
<% end %>

詳細:https ://apidock.com/rails/ActionView/Helpers/UrlHelper/button_to

于 2020-09-05T17:35:12.193 に答える
-4

あなたはそれを誤解している。CSSジョブである何かを制御するために不要なhtml要素を追加しようとしています。

代わりに、ボタンのクラスまたはIDを作成し、これをcssに追加します。

 .btn { padding-left:30px; background: url(pencil.png) no-repeat; }
于 2012-06-20T02:55:44.537 に答える