Hallo,
hier benutzt Du nicht die Einstellungen, sondern ein kleines javascript-snippet.
Es ist auch ziemlich egal, ob Du eine Matrix(Zahlen) oder Matrix(Texte) nimmst.
Code:
<script type="text/javascript" charset="utf-8">
$(document).on('ready pjax:scriptcomplete',function(){
var thisQuestion = $('#question{QID}');
// Insert selects
$('.answer-item.answer_cell_X001', thisQuestion).addClass('with-select').append('<select class="inserted-select form-control list-question-select">\
<option value="">Bitte wählen Sie...</option>\
<option value="0">0</option>\
<option value="1">1</option>\
<option value="2">2</option>\
<option value="3">3</option>\
<option value="4">4</option>\
<option value="5">5</option>\
<option value="6">6</option>\
<option value="7">7</option>\
<option value="8">8</option>\
<option value="9">9</option>\
<option value="10">10</option>\
<option value="11">11</option>\
<option value="12">12</option>\
<option value="13">13</option>\
<option value="14">14</option>\
<option value="15">15</option>\
<option value="16">16</option>\
<option value="17">17</option>\
<option value="18">18</option>\
<option value="19">19</option>\
<option value="20">20</option>\
</select>');
$('.answer-item.answer_cell_X002', thisQuestion).addClass('with-select').append('<select class="inserted-select form-control list-question-select">\
<option value="">Bitte wählen Sie...</option>\
<option value="0">0</option>\
<option value="1">1</option>\
<option value="2">2</option>\
<option value="3">3</option>\
<option value="4">4</option>\
<option value="5">5</option>\
<option value="6">6</option>\
<option value="7">7</option>\
<option value="8">8</option>\
<option value="9">9</option>\
<option value="10">10</option>\
<option value="11">11</option>\
</select>');
// Listeners
$('.inserted-select', thisQuestion).on('change', function(i) {
if($(this).val() != '') {
$(this).closest('.answer-item').find('input:text').val($.trim($('option:selected', this).text())).trigger('change');
}
else {
$(this).closest('.answer-item').find('input:text').val('').trigger('change');
}
});
// Returning to page
$('.with-select input:text', thisQuestion).each(function(i) {
var thisCell = $(this).closest('.answer-item');
var inputText = $.trim($(this).val());
var selectval = $('select.inserted-select option', thisCell).filter(function () { return $(this).html() == inputText; }).val();
$('select.inserted-select', thisCell).val(selectval);
});
// Clean-up styles
$('select.inserted-select', thisQuestion).css({
'max-width': '100%'
});
$('.with-select input:text', thisQuestion).css({
'position': 'absolute',
'left': '-9999em'
});
});
</script>
Die Jahre gehen also von 0 bis 20 (kannst Du ja erweitern, ich war zu faul dazu), und die Monate von 0 bis 11.
Wie Du siehst, ist hier die horizontale Skala mit "X001", "X002",... codiert; das ist bei dieser (zweidimensionalen) Matrix etwas übersichtlicher, damit man nicht später so etwas wie "Q1_SQ002_SQ003" hat, und man immer überlegen muss "Ist das jetzt 2.Spalte,3.Zeile, oder umgekehrt"
Wie ich schon schrieb, hierzu gibt es viele Beispiele und sample surveys hier im Forum.
Später werde ich aber noch etwas schicken.
Bis dann
Joffm
Also dass man bei Jahre z.B zwischen 1 und 20 wählen kann und bei Monate 1-12?
Das solltest Du Dir noch einmal überlegen.
Jemand könnte erst 6 Monate dort sein, also 0 Jahre, 6 Monate
Wenn jemand genau zwei Jahre dort ist, gibt er dann 2 Jahre, 0 Monate ein, oder 1 Jahr, 12 Monate?
Soll heißen, die "0" muss immer dabei sein (es sei denn, Du befragst nur Personen, die mindestens x Jahre dort sind), aber nicht die "12" bei den Monaten.