Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

Array filter with exclusive option

  • wireframemedia
  • wireframemedia's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
14 years 3 months ago #48351 by wireframemedia
Replied by wireframemedia on topic Array filter with exclusive option
Sorry, perhaps I didn't word that correctly.

The survey has a series of questions (multi-choice, checkboxes) which all cascade, feed to one another. The final one also needs a static/exclusive option. As below:

Q1
What colors do you like?
[ ] Red
[ ] Blue
[ ] Green
[ ] Yellow

Q2
Which colors do you like best? (feeds only the answers chosen in Q1)
[ ] Red
[ ] Blue
* This being the final question in the series also needs one other static choice not present in Q1/array filter.
[ ] None of the above

This is what they are trying to achieve.
Does that help?

Thank you again.
Dawna
The topic has been locked.
  • tpartner
  • tpartner's Avatar
  • Away
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
14 years 3 months ago #48353 by tpartner
Replied by tpartner on topic Array filter with exclusive option
Okay, I see now. I thought you were trying to filter an array type with a multi-option type (as in the image above). Now what I'm seeing is a series of multi-options filtering each other and culminating in a final one that has a static option.

I'll have to give it a little more thought and see how the "automatic filtering" will affect our "custom filter" on the last two in the cascade.

How many questions are there in the cascade?

Cheers,
Tony Partner

Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
The topic has been locked.
  • wireframemedia
  • wireframemedia's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
14 years 3 months ago #48356 by wireframemedia
Replied by wireframemedia on topic Array filter with exclusive option
Tony,

It's only a set of three questions which cascade, each however has 13 options/choices and the last needs to have the "none of the above" static option.

However, later in the survey, the results of that last one are piped back in repeatedly in the question text (which works great), and used for skip rules (conditions, again works great).

I am highly impressed by this product and am advising my clients to start using it and donate to support the efforts.

This survey is a highly complex one and just about 98% of it was easily accomplished through LimeSurvey, out-of-the-box. I have only a few straggling issues.

Thank you for all your help with this.
Dawna
The topic has been locked.
  • DenisChenu
  • DenisChenu's Avatar
  • Offline
  • LimeSurvey Community Team & Official Partner
  • LimeSurvey Community Team & Official Partner
More
14 years 3 months ago #48364 by DenisChenu
Replied by DenisChenu on topic Array filter with exclusive option
Just an idea :

Add the None of the above answer to each question, put this one in default for the first question and hide it with css/js.

I think it's easy to do, there are only a problem : all first statistics are bad cause this option.

:)

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member. - Professional support - Plugins, theme and development .
I don't answer to private message.
The topic has been locked.
  • tpartner
  • tpartner's Avatar
  • Away
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
14 years 3 months ago #48374 by tpartner
Replied by tpartner on topic Array filter with exclusive option

Add the None of the above answer to each question, put this one in default for the first question and hide it with css/js.

Clever idea Shnoulle but I'm struggling with the lack of a click event not firing the filtering function. How would you set the "default" in Q1?

Dawna, I don't suppose these questions are on separate pages are they?

Cheers,
Tony Partner

Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
The topic has been locked.
  • wireframemedia
  • wireframemedia's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
14 years 3 months ago #48376 by wireframemedia
Replied by wireframemedia on topic Array filter with exclusive option
Hi Tony,

Yes they are each on a separate page. The survey is question-by-question.

I went back to the client and asked if we could add this option to each of the previous questions so it would be there when it was needed to filter through. I'm still waiting on an answer but I fear they will want to keep it as is. :-(

Thanks.
Dawna
The topic has been locked.
  • Mazi
  • Mazi's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
14 years 3 months ago #48383 by Mazi
Replied by Mazi on topic Array filter with exclusive option
tpartner wrote:

Clever idea Shnoulle but I'm struggling with the lack of a click event not firing the filtering function. How would you set the "default" in Q1?

Can't we do that by using the new default answer feature in Limesurvey. If you set a default answer there it should check the box at loading time; this should also work if the option is hidden by CSS I guess.

Best regards/Beste Grüße,
Dr. Marcel Minke
The topic has been locked.
  • tpartner
  • tpartner's Avatar
  • Away
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
14 years 3 months ago #48392 by tpartner
Replied by tpartner on topic Array filter with exclusive option
Duh...zoned on that!

So if Dawna can beat her customer into allowing hidden "none of the above" options in all questions we can do it this way.

Cheers,
Tony Partner

Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
The topic has been locked.
  • wireframemedia
  • wireframemedia's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
14 years 3 months ago #48393 by wireframemedia
Replied by wireframemedia on topic Array filter with exclusive option
By setting that up as a default answer that will upset the skip logic as in some places checking that off, terminates the user.

Is there any other way to add in a static, exclusive option along with a filtered array?

I really need this to work for 2 questions then I'm all set.

Thanks.
d.
The topic has been locked.
  • tpartner
  • tpartner's Avatar
  • Away
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
14 years 3 months ago #48397 by tpartner
Replied by tpartner on topic Array filter with exclusive option
Darn, that kind of sets us back to JavaScript.

Well I can force the "none of the above" option to appear but if the respondent checks it, advances in the survey and then returns, the option will be unchecked by the filtering process.

Cheers,
Tony Partner

Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
The topic has been locked.
  • wireframemedia
  • wireframemedia's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
14 years 3 months ago #48399 by wireframemedia
Replied by wireframemedia on topic Array filter with exclusive option
That is ok. We do not allow the previous button and it will be token-based so they can only go one, way once.

If we do this with Javascript that is ok. I just need the code to use, I can modify it but wouldn't know where to begin by writing it from scratch.

I just need that static option to be available for the last two questions in the cascade series. Then if the user checks it there, they will term out.

That will finalize the survey once this is fixed and we can be done.

Thank you again for all your input.
Dawna
The topic has been locked.
  • tpartner
  • tpartner's Avatar
  • Away
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
14 years 3 months ago #48407 by tpartner
Replied by tpartner on topic Array filter with exclusive option
Assuming the survey is in question-by-question mode and that your "static" options are always last in the list, place the following script in the source of each question that you would like the last option to be permanently displayed:
Code:
<script type="text/javascript" charset="utf-8">
 
    $(document).ready(function(){
 
        window.setTimeout(function() {
            $('td.answer li:last').show();
            $('td.answer li:last input[type=hidden]:eq(0)').attr('value', 'on');
        }, 50);
 
    });
 
</script>

Cheers,
Tony Partner

Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
The topic has been locked.
Moderators: tpartnerholch

Lime-years ahead

Online-surveys for every purse and purpose