Is there an easy way to have the form helpers set the tabindex parameter automatically when using form helpers in Rails?
Basically, I don't want to have to manually set the tab index on every form element when building forms (I keep forgetting to update them when I change things). The majority of the forms I write are basically a list of fields. The tab index should be in the order they are defined. Ideally, I would set the initial index in the form_for
call and everything else would be handled for me.
Does anyone know how to do this?
I usually add a method like this to ApplicationHelper
def autotab
@current_tab ||= 0
@current_tab += 1
end
Then in my views I make calls to the helper with a :tabindex => autotab
like so:
<%= text_field "post", "login",:tabindex => autotab, :value => @login %>
You can also modify all the text_field
, check_box
, methods one at a time to add the tabindex automatically, by adding something like this to your application helper: (untested but you get the point)
def text_field_with_tabindex(*args)
options = args.last
options[:tabindex] = autotab if options.is_a?(Hash) && options[:tabindex].nil?
text_field_without_tabindex(*args)
end
def self.included(base)
base.class_eval do
alias_method_chain :text_field, :tabindex
end
end
That might be more trouble than it's worth
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With