Matrix question text box, move to right of scalert section or bottom (on phone screen) | XM Community
Skip to main content

Hi All,
I would like to move the text box as show in the picture below to the right of the CSAT radio buttons. I've had a play with CSS and HTML elements and think it's something to do with margin and float styles but it's not like in word when you move objects it repositions the other elements. So please could someone advise how to do this. For mobile phone screens I also need to move it but in that case I want to position it below.

Hope someone can advise.

Thanks
image.png

Try using the side by side question type
image.png


Hi Eumetis , thanks for the tip but that is not mobile friend so it goes off the side of the screen. Can you advise further?
Thanks
Rod Pestell


hi Rod_Pestell

try adding this javascript to your matrix question:

Qualtrics.SurveyEngine.addOnload(function()
{
let firstColumn = document.getElementsByClassName('c1')

let lastColumn = document.getElementsByClassName('last')

console.log(firstColumn)
console.log(lastColumn)

for(let i=0;i lastColumn[i].insertAdjacentElement('afterend', firstColumn[i]);

}


});
this should do the magic 🙂 at least in the preview mode. please make sure to test it on a real device also
Best regards

Rudi


hi Rudi ,
Thanks for that, I'll give that a try! :)
Thanks again
Rod Pestell


Hi Rod_Pestell,
your setup has intrigued me but to be honest as interesting as the puzzle for the mobile version is, it seems to be too much of a hassle to change the mobile behavior of the matrix question.
If your setup was be my task I would set up a loop and merge block add three questions:

  1. text/graphic with the act

  2. multiple choice question

  3. text entry question

  4. all without a page break

  5. add an auto-forward function

desktop it looks like this:
image.pngand on a mobile device :
image.png
with the auto-forward function in place, the respondent won't have more clicks than with a matrix question.
I know it's not exactly what you aimed at, but it works and is mobile friendly

Best regards

Rudi


Hi Rudi

Thanks for that. Yes there are a number of ways to skin this cat as it were. Let me explain my starting point...

We're opening up a new hotel which for the first time has two entertainment venues so we now need to consider breaking down this question into two venues. However we're wanting to push the boat out here and make a step change to the responses by asking our guests to score the individual acts which will change each break. Each break will therefore I estimate have upto 10 acts per break per venue (it'll normally be 3-4 due to repeats). We have about 300 acts in our portfolio so as you can imagine running a loop and merge for 300 variables is going to cause a lot of issues plus each couple of months we'll probably remove some acts and replace them with new ones so the number of variables will increment as you'd have to keep them as single use.

My current solution to this is using a little bit of javascript and assign the act name from a delimited embedded filed that contains the acts that guest experienced (from our internal systems) to each variable (10 choices in the question which should be enough) at the time of displaying the question to the guest. So for each response this creates one set of fields (as it's one matrix question) which is dynamic for the act name plus the other fields will then provide a score and a text box for any verbatim they may want to provide. Now, I guess you can do all this in a loop and merge but it's only 2 venues so I wasn't going to bother setting that up. However, I also see that you could do a loop and merge for each Act for each Venue (two different blocks), however we are only asking the guest one CSAT 5 point scale question for each act so I didn't think there would be any advantage in doing a loop and merge compared to a matrix question - am I right in my thinking or have I missed something crucial here?

So the above is the doable bit...moving on, once you've got the data recorded the next thing is to be able to chart it but Qualtrics doesn't like mutli dimensional variables / fields with different labels in. My solution is to trick it and create a combined text field which will include the Act and the score (mapped to some 5 point scalert wording like very dissatisfied to very satisfied) and use TextiQ and build topics that represent the names of the acts (which will be quite time consuming but I might be able to programmatically create the JSON syntax in excel which then means I can then just re-import it when there are changes).

That will then mean I can at least chart the data in a textiQ table on a dashboard but not alot more. In my testing I've not been that successful in crosstabs in the D&A section so I'm still working on that.

Sorry that was rather a long reply. I have in fact raised a thread on this but the above is a little more further on in my testing but I've not got to the point of answering my own question yet. I know I'm trying to ask Qualtrics to do something it's not designed to do but that's never stopped me before! ;)
https://community.qualtrics.com/XMcommunity/discussion/13681/multiple-value-text-set-embedded-data-field-as-multiple-choice-question#latest
The whole problem is the mass of ever increasing variables you'd need to manage this and continue to update in the dashboard dataset settings (if I wanted to create a combined field of all the acts) and the textiq topics. Ideally I'd love to have a response string that just does: Act1, Score;Act2, Score;Act3, Score... and so on and then for a clever widget to transpose that into a mutli dimensional table of chart. That is in a sense what textiQ does, for if you look at the Topic Sentiment Score field in a record grid it uses the colon to separate the topic and it's resulting score but backward engineering it and trying to use it in a field not associated to the TextiQ portion of the system doesn't seem to work.

Please feel free to have a read of the other thread and reply if you've got some ideas.

Thanks in advance!

Rod Pestell


Hi Rod,
interesting task.
From what I understand is that you want to show the evaluation for each act in one widget.
the problem is that one respondent evaluates x acts whereas you want show the score for each single act, right?
If you don't mind creating completes you could think about creating a second survey where you have for each act one data set...
For example, one respondent evaluates 5 acts you would create 5 data sets in your second survey, while another respondent evaluates 3 acts generating 3 data sets in the second survey
this should be doable by using a workflow with a web service populating the second survey
Best regards

Rudi


Hi Rudi
aha! I see so instead of one row for the whole response, for each act you provide a response. So if there were 10 acts for one respondant, it would create 10 responses in the secondary survey and would just repeat their metadata such as their start date, hotel they went to, how much they paid etc etc.
I'm assuming one webservice call can only create one response?
So if I provided 10 choices for each venue (say there are 2 venues) would I setup 10 webservices or 20 webservices. eg. Would you want to see the following as a field in the secondary survey:
Venue 1, Venue 1Acts, Venue2, Venue2Acts
with 10 rows of responses
or would you want
Venue, VenueActs
with 20 rows of responses, which would then actually cover as many venues and acts as you like?! I guess it might depend on my licence and how many responses we've bought!! ;)
Can you do a webservice from within a code task in a workflow? That would be much more efficient and get round the limit of 5 tasks per workflow.

Thanks for the great idea - that does sound alot neater and easier to implement.

Rod Pestell


Hi Rod,
my pleasure,
yes you can do a web service from a code task
I would go for venue and venue acts only, else you would have again to use two widgets

Best regards
Rudi


Cool - so that will be my bedtime reading sortedfor the next week then!!
I'll let you know how I get on and then update my other thread once I've got it working.
Thanks and have a good weekend
Rod


Leave a Reply