使用 Qualtrics API 从矩阵 table 获取列选择值
Getting the column choice values from a matrix table using Qualtrics API
我有一个包含两列的矩阵。我想在页面提交时获取两列的输入。我一直在使用getChoiceValue
,获取正确列的值没有问题。如何获取左列的值?
Qualtrics.SurveyEngine.addOnPageSubmit(function()
{
// this does not work
let left_column_choice = this.getChoiceValue(0);
// this works for sure
let right_column_choice = this.getChoiceValue(1);
});
我对 'Qualtrics' 或它包含的任何功能一无所知,
但如果您正在寻找一个普通的 JS 解决方案,这可能会有所帮助。
function getColumnInfo (cols,c) {
let arr = [],
sel = document.querySelectorAll('.tbl td');
for( const [ndx,val] of sel.entries(sel) ) {
if ((ndx % cols) == c) arr.push(val.textContent)
};
return arr;
}
let info = getColumnInfo(4,1); // of 4 column table, get column 1
alert('Column #2 contents:\n'+info);
<table border='1' class='tbl'>
<caption> Table </caption>
<tr>
<td>Group 1 </td>
<td>A </td>
<td>a </td>
<td>1 </td>
</tr>
<tr>
<td>Group 2 </td>
<td>B </td>
<td>b </td>
<td>2 </td>
</tr>
<tr>
<td>Group 3 </td>
<td>C </td>
<td>c </td>
<td>3 </td>
</tr>
</table>
我有一个包含两列的矩阵。我想在页面提交时获取两列的输入。我一直在使用getChoiceValue
,获取正确列的值没有问题。如何获取左列的值?
Qualtrics.SurveyEngine.addOnPageSubmit(function()
{
// this does not work
let left_column_choice = this.getChoiceValue(0);
// this works for sure
let right_column_choice = this.getChoiceValue(1);
});
我对 'Qualtrics' 或它包含的任何功能一无所知, 但如果您正在寻找一个普通的 JS 解决方案,这可能会有所帮助。
function getColumnInfo (cols,c) {
let arr = [],
sel = document.querySelectorAll('.tbl td');
for( const [ndx,val] of sel.entries(sel) ) {
if ((ndx % cols) == c) arr.push(val.textContent)
};
return arr;
}
let info = getColumnInfo(4,1); // of 4 column table, get column 1
alert('Column #2 contents:\n'+info);
<table border='1' class='tbl'>
<caption> Table </caption>
<tr>
<td>Group 1 </td>
<td>A </td>
<td>a </td>
<td>1 </td>
</tr>
<tr>
<td>Group 2 </td>
<td>B </td>
<td>b </td>
<td>2 </td>
</tr>
<tr>
<td>Group 3 </td>
<td>C </td>
<td>c </td>
<td>3 </td>
</tr>
</table>