2

我们将 CrowdFlower 与 Amazon Mechanical Turk 结合使用。我们的问题有相同的答案可供选择,因此我们希望随机化它们出现的顺序,以使用户保持警惕并希望阻止他们作弊。

我们希望能够将脚本插入到 CML(CrowdFlower 标记语言)文档中,以应用于所有问题。我们认为插入一些 JavaScript 是正确的方法。欢迎任何提示。

4

2 回答 2

2

您可以使用一小段 javascript 来实现这一点。您需要做的就是向要随机化的cml:radiosorcml:checkboxes标记添加一个 class="rando" 属性,然后将以下代码放在高级编辑器的 javascript 部分(假设您的选择少于 10 个)cml:radioscml:checkboxes标签)

$$('.cml_field.rando input').sort(function(a,b) {
   return Math.round(Math.random()*10) - 1 
}).each(function(o) { 
   o.getParent('.cml_row').inject(o.getParent('.cml_field')) 
})
于 2012-06-28T01:42:48.840 回答
1

您还可以使用随机液体过滤器:

{% capture my_value %}{{ 3 | random }}{% endcapture %}
{% case my_value %}
{% when "1" %}
  One
{% when "2" %}
  Two
{% when "0" %}
  Zero
{% endcase %}
于 2012-11-14T05:28:18.007 回答