Selezione singola su colonna

 

Compatibilità:IdSurvey 6IdSurvey 7

Questo javascript può essere usato in griglie con domande a scelta singola per obbligare una selezione singola su colonna (il valore di ciascuna colonna può essere selezionato solo una volta nella griglia). Questo script funziona solo con le griglie a selezione singola.

Istruzioni

Attenzione: il numero di righe e colonne deve essere lo stesso.

Incolla lo script nella casella Client script che trovi nel bottone ingranaggio della pagina.

<script>

  $(function(){
    var isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) && $(window).width() <= 800; var isMobileBrowser = (typeof _customCheckMobileBrowser == "function") ? _customCheckMobileBrowser() : isMobile; if(isMobileBrowser){ $(".survey-page-wrapper #page .group-question-sub-elements > .sub-elements-wrapper :radio").on("change", function(){
        var main = $(this).closest(".main-responses");        
        var li = $(this).closest("li");
        var index = main.find("li").index(li);
        var currentRadio = $(this).closest(".sub-elements-wrapper");

        $(".survey-page-wrapper .group-question-sub-elements > .sub-elements-wrapper .sub-elements-wrapper").each(function(){
          if(!$(this).is(currentRadio)){
            if($(this).find(".main-responses").find("li").eq(index).find(":radio").prop("checked") == true)
              $(this).find(".main-responses").find("li").eq(index).find(":radio").prop("checked", false);
          }
        });

      });
    }else{
      $(".grid-question-table :radio").on("change", function(){
        var table = $(this).closest("table");
        var tr = $(this).closest("tr");
        var index = tr.find(":radio").index($(this));
        table.find("tr").not(tr).each(function(){
          if($(this).find(":radio").eq(index).prop("checked") == true)
            $(this).find(":radio").prop("checked", false);
        });
      });
    }
  });
</script>

E’ inoltre possibile rendere l’intera domanda opzionale (ad esempio perché hai 6 item ma vuoi che vengano indicati solo i primi 3 per preferenza), cliccando sul pulsante ingranaggio della domanda e selezionando “Rendi tutto non obbligatorio”.

Leave A Comment?