我手边有一个问题,我无法弄清楚自己。 为了写我的论文,我需要做一个调查。更精确:我需要一个用于我的控制,一个用于我的治疗组。我正在使用Google表单。
我找不到在Forms本身中随机化部分的方法,所以我查看了脚本编辑器。我试图找出,如果有一种方法可以有两个表格,当点击链接时,这两个表格将被随机分配给参与者。
我想到了类似的东西:
function random_2(){
var myrandom=Math.round(Math.random())
var link1="http://www.google1.com"
var link2="http://www.google2.com"
if (myrandom==0)
window.location=link1
else if (myrandom==1)
window.location=link2
}
问题是我在编码方面非常缺乏,似乎到目前为止没有人想做这样的事情!但必须有一个简单的方法。 我非常感谢任何输入! 谢谢。
答案 0 :(得分:0)
那么,当点击链接时,您想要一个分配给用户的URL(A或B)吗?如果是这种情况,则不能。但是,您可以有一个参与者列表,并在电子表格中随机分配一列链接。
这样的事情会起作用:
// Generate a random number and return a link
function assignRand() {
var int = Math.round(Math.random() * 2)
if(int == 0) {
return "link1"
} else {
return "link2"
}
}
// Loop through a list of names, emails (whatever) in col A
// Assign a random link to each
function write() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet7")
var data = sheet.getDataRange().getValues();
for(var i=0; i<data.length; i++) {
var link = assignRand()
sheet.getRange((i+1), 2).setValue(link)
}
}
分配完成后,您可以将合并邮件发送给参与者,也可以使用其他应用脚本功能在循环内发送个别调查电子邮件。
答案 1 :(得分:0)
你可以在gs文件中有一个链接数组,然后在doGet()里面随机选择一个数组元素,它将是一个链接并填充模板中的链接。
在模板中,您可以编写客户端javascript代码以重定向到该链接,或向用户显示一个按钮以重定向到该链接。
当我有一些额外的时间时,会尝试使用示例代码段来更新此答案。
如果您有任何问题,可以对具体问题发表评论。