在我的Qualtrics调查中,有一个问题(描述性文本)是一个两列表,其中填充了两个不同国家随机选择的嵌入式数据(下面的v2elsuffrage_ord变量)。这两个变量都是0-4。我想要做的是有条件地格式化这些单元格,所以无论得分较大(score1还是score2),该单元格都是绿色的。
下面是我的桌子的一个例子:
<table class="UserTable">
<colgroup>
<col id="score1" />
<col id="score2" />
</colgroup>
<tbody>
<tr>
<th>Country A</th>
<th>Country B</th>
</tr>
<tr>
<td>${e://Field/v2elsuffrage_ord}</td>
<td>${e://Field/v2elsuffrage2_ord}</td>
</tr>
</tbody>
</table>这在Qualtrics中是可能的吗?我在HTML中找到了一个普通条件格式的例子,并试图为Qualtrics修改它,但是它没有工作。这就是我作为我的Javascript所做的:
Qualtrics.SurveyEngine.addOnload(function()
{
var score1 = $(this).text();
var score2 = $(this).text();
if (score1 > score2) {
$(this).addClass('more1');
}
else if (score1 < score2) {
$(this).addClass('more2');
}
else if (score1 = score2) {
$(this).addClass('same');
}
});然后,对于CSS,我在“外观与感觉”的高级部分中添加了这段代码(现在随机选择颜色,看看它是否有效):
.more1 {
background-color: #0f0;
}
.more2 {
background-color: #0c0;
}
.same {
background-color: #060;
}我知道我肯定做得不对,但我从来没有真正在HTML/CSS中工作过(就像我说的,我甚至不知道这是否可能)。任何想法或指导都是很棒的,即使这只是一个解决办法。
发布于 2017-08-15 16:01:27
在您的JavaScript中有许多错误:
此外,样式分配逻辑和CSS没有意义。你只需要一种风格。因为是这样的,所以将样式添加到元素中会更简单。不需要单独的CSS。
试试这个JavaScript ..。
Qualtrics.SurveyEngine.addOnload(function()
{
var score1 = parseInt("${e://Field/v2elsuffrage_ord}");
var score2 = parseInt("${e://Field/v2elsuffrage2_ord}");
if (score1 > score2) {
$('score1').style.backgroundColor = "#0f0";
}
else if (score1 < score2) {
$('score2').style.backgroundColor = "#0f0";
}
});https://stackoverflow.com/questions/45696039
复制相似问题