这是帮手:
module FormHelper
def phone_number_tag *args
args.each do |e|
if e.is_a? Hash and e.has_key? :class
e[:class] = e[:class] + " phone_number"
elsif e.is_a? Hash
e[:class] = "phone_number"
end
end
text_field_tag args
end
end
现在奇怪的是,当我像这样在里面扔一个调试器时......
module FormHelper
def phone_number_tag *args
args.each do |e|
if e.is_a? Hash and e.has_key? :class
e[:class] = e[:class] + " phone_number"
elsif e.is_a? Hash
e[:class] = "phone_number"
end
end
debugger
text_field_tag args
end
end
...并text_field_tags args
在遇到该调试器后在控制台中运行,我得到:
"<input id=\"_:first___:class___input_span2_phone_number___:placeholder___First__\" name=\"first {:class=>"input span2 phone_number", :placeholder=>"First"}\" type=\"text\" />"
但是,呈现页面上的 HTML 输出是:
<input class="input span2" id="follow_up_phone" name="referral[follow_ups_attributes][0][phone]" size="30" type="text">
即使在调试器中有,也没有 phone_number 类。
有谁知道为什么?