how to Avoid duplicate code when adding pre-filled checkboxes/radio buttons in form?Ask Questions

 Posted on 08/08/2018 4:27:12 PM

When adding radio buttons and checkboxes to my pre-filled form I find myself having to duplicate code.

Ideally I want to declare via a variable if the input field should be selected or not. Like e.g.:

- checked = false # or `true`, `false`, `nil`, `""`
%input{:type => "radio", :name => "foo", :value => "bar", :checked => checked}= "foo"
%input{:type => "checkbox", :name => "foo", :value => "bar", :checked => checked}= "foo"

But the result is that whatever value I put into the checked variable it results in the input field ends up selected.

My solution results in lots of lines of duplicate code:

- checked = false # or `true`, `false`, `nil`, `""`
- if true
  %input{:type => "radio", :name => "foo", :value => "bar", :checked => true}= "foo"
- else
  %input{:type => "radio", :name => "foo", :value => "bar"}= "foo"

- if true
  %input{:type => "checkbox", :name => "foo", :value => "bar", :checked => true}= "foo"
- else
  %input{:type => "checkbox", :name => "foo", :value => "bar"}= "foo"

Anyone who know a better way?

Share On: facebook gplus twitter
Asked by Hardik Bera on 08/08/2018 4:27:12 PM Score: 375 points
Add Comment:


1 Answer

1 Corrected Answers

Post Your Answer


Existing Members

Sign in to your account
Email Address
...or Join us
Download, Vote, Comment, Publish.
Full Name
Email Address
I have read and agree to the Terms of Service and Privacy Policy
Please subscribe me to the StoodQ newsletters
Guideline to answer a question:

Useful tips to submit your answer
Please read below guidelines before you submit your answer for question.

  • Read and understand question for which you are submitting your answer.
  • Try to avoid grammatical and spell mistake while answering.
  • Do not post any irrelevant information in your answer.
  • Explain your answer with example or any reference link to help who posted question.
  • If you find irrelevant question, please report it to support. Click here to contact support.
  • You agree to the privacy policy and terms of use to submit any contents.

Note: StoodQ is online developers community which helps developer for their difficulty, lets help them with your value contribution.