繁体   English   中英

Qualtrics表条件格式

[英]Qualtrics Table Conditional Formatting

在我的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,我将此代码添加到Look&Feel的Advanced(高级)部分下(现在随机选择颜色以查看其是否有效):

.more1 {
    background-color: #0f0;
}

.more2 {
    background-color: #0c0;
}

.same {
    background-color: #060;
}

我知道我肯定做错了,但是我从来没有真正在HTML / CSS中工作过(就像我说的,我什至不知道这样做是否可行)。 任何想法或指导都将是不错的选择,即使这只是一种解决方法。

您的JavaScript中有很多错误:

  1. $(this)是错误的
  2. text()是jQuery函数,而不是prototypejs或本机JavaScript函数
  3. score1 = score2是无效的比较
  4. addClass不是有效的函数

另外,样式分配逻辑和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";
}
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM