我有旧的HTML代码,包含html和css ..
<form action="login" method="post">
<div class="field">
<label for="username">Username</label>
<input type="text" class="text" id="username" name="username" value="just click login !"/>
</div>
<span class="fright">
<button class="button" type="submit"><strong>Log In</strong></button>
</span>
</div>
如何将此代码转换为体面的rails代码? 我想出了这个,但它不对:-(:
<% form_for :user, @user, :url => { :action => "login" } do |f| %>
<% div_for f, :class => "field text" do %>
<%= f.text_field :username %>
<%= f.password_field :password, :class => "field text" %>
<% end %>
<span class="fright">
<%= submit_tag '<strong>Inloggen</strong>', :class => "button",:disable_with => 'verwerken...' %></span>
<% end %>
我遇到了
的问题 <strong>Inloggen</strong>
并使用
<% div_for f, :class => "field text" do %>
答案 0 :(得分:1)
尝试这样的事情:
<% form_for :user, @user, :url => { :action => "login" } do |f| %>
<div class="field">
<%= f.text_field :username %>
<%= f.password_field :password, :class => "field text" %>
</div>
<span class="fright">
<%= submit_tag 'Inloggen', :class => "button strong",:disable_with => 'verwerken...' %>
</span>
<% end %>
我将<strong>
从submit_tag说明移到了类,因为我不确定submit标记是否会接受它。所以你需要在你的CSS中定义.strong类。
答案 1 :(得分:1)
submit_tag
生成文本作为input
标记的值属性。
submit_tag "Edit this article"
# => <input name="commit" type="submit" value="Edit this article" />
因此,向该文字添加strong
无效,并生成<input>
,您似乎需要<button>
。所以也可以在这里使用html。
<button class="button" type="submit"><strong>Log In</strong></button>
由于你不需要根据任何变量改变它,你不需要用ruby渲染它。
根据您的目标HTML,您不需要div_for
。简单地使用。没有理由让你的模板用ruby渲染。
这里的课不要太努力。有时普通的HTML很好。