Have an idea?

Visit Sawtooth Software Feedback to share your ideas on how we can improve our products.

Response Timer on Grid Question

Hi all,

This timer Zachary built worked great on a Radio Select question! We're working to build it into a grid question. In the Radio Select version, we asked respondents to select which key word describes Brand X. In addition to the word they selected, we measured how fast they clicked the response, with the theory that faster click = stronger opinion.

Next, we want to measure click-time for a question like this in Grid, e.g., how fast they pick a word for each of several brands, where brands are Columns. The current script basically just references the response click for a single question on a page by itself. So the script would need to be modified to measure click-time for individual columns.

Any ideas? We're a bit outside of my expertise level here!
asked Aug 18 by cschlosser Bronze (1,005 points)

1 Answer

0 votes
Immediately following your current grid question, add another grid question.  The new grid's rows should be your list of brands; the new grid's columns can be any list with only one item.  The new grid should be set to numeric and should allow decimals.

Now place this code in the new grid's footer:

<style>
#[% QuestionName() %]_div {
    display: none;
}
</style>

<script>
var gridRegex;
var start;
$(document).ready(function(){
    var now = new Date();
    start = now.getTime();
    var grid = $('#[% QuestionName() %]_div').prevAll('.grid').eq(0).attr('id').replace(/_div/, '');
    gridRegex = new RegExp('^' + grid + '_c([0-9]+)$');
})

function SSI_CustomGraphicalRadiobox(graphical, input) {
    var now = new Date();
    var end = now.getTime();
    var match = input.name.match(gridRegex);
    if (match) {
        var col = match[1];
        $('#[% QuestionName() %]_r' + col + '_c1').val((end - start) / 1000);
    }
}
</script>
answered Aug 18 by Zachary Platinum Sawtooth Software, Inc. (63,475 points)
...