我想知道为什么我们必须nil在推杆时添加一个:class => "class_name"
<%= submit_tag nil, :class => "class_name" %>
Run Code Online (Sandbox Code Playgroud)
但为此:
<%= f.submit class: "class-Name" %>
Run Code Online (Sandbox Code Playgroud)
我不需要添加 nil
谢谢
小智 12
<%= submit_tag("Update", :id=>"button", :class=>"Test", :name=>"submit") %>
Run Code Online (Sandbox Code Playgroud)
第一个参数是必需的,它将是值,它们是您要指定的任何参数,可以使用以下哈希方式完成:key =>"value".
查看submit_tag方法的实现方式可以清楚地回答您的问题.
def submit_tag(value = "Save changes", options = {})
options = options.stringify_keys
if disable_with = options.delete("disable_with")
options["data-disable-with"] = disable_with
end
if confirm = options.delete("confirm")
options["data-confirm"] = confirm
end
tag :input, { "type" => "submit", "name" => "commit", "value" => value }.update(options)
end
Run Code Online (Sandbox Code Playgroud)
它需要两个参数,第一个是value默认情况下是"保存更改",第二个是Hash of options.如果你没有通过nil那么它将假设这是你想要输入的值.
| 归档时间: |
|
| 查看次数: |
12475 次 |
| 最近记录: |