将提交按钮图像添加到Rails表单

rot*_*ice 15 ruby ruby-on-rails ruby-on-rails-3

我在Rails中创建一个用于提交注释的表单,我希望提交按钮是一个图像,而不是一个HTML按钮.在这篇文档中,它说代码是image_submit_tag,但我不能让它在我的代码中工作.

这是我正在使用的:

<% form_for [@post, Comment.new], :remote => true do |f| %>
<p>
    <%= f.label :body, "Add a comment" %><br />
    Name <%= f.text_field :name %><br />
    Website<%= f.text_field :website %><br />
    Twitter<%= f.text_field :twitter %><br />
    <%= f.text_area :body %>
</p>
<div id="comment-form">

    <div id="comment-button"><p>
        <%= f.image_submit_tag("comment-button.png") %></p>
        </div>
</div>
<% end %>
Run Code Online (Sandbox Code Playgroud)

谢谢您的帮助.

Tor*_*den 51

我只是摔倒了这个,试图解决同样的问题.一个突然的想法让我尝试这样的事情:

<%= f.submit "Comment", :type => :image, :src => "/images/comment-button.png" %>
Run Code Online (Sandbox Code Playgroud)

将创建这样的东西:

<input id="comment_submit" name="commit" src="/images/comment-button.png" type="image" value="Comment" />
Run Code Online (Sandbox Code Playgroud)

试试看 :-)

  • 注意rails> = 3.1你会因为资产管道而使用帮助器:: src => image_path("submit.png") (9认同)

Oli*_*ves 13

我相信无法在表单构建器对象上调用'tag'方法.

通过'tag'方法,我指的是来自ActionView :: Helpers :: FormTagHelper模块的东西.

如果你这样做,它应该工作:

<div id="comment-button"><p>
  <%= image_submit_tag("comment-button.png") %></p>
</div>
Run Code Online (Sandbox Code Playgroud)


Zab*_*bba 9

你可以这样做:

ERB:

<%= f.submit "" %>
Run Code Online (Sandbox Code Playgroud)

CSS:

input[type="submit"]
{
  background:url(mybutton.png);
}
Run Code Online (Sandbox Code Playgroud)