0

我正在尝试在谷歌表单上随机选择单选按钮。我尝试在网上浏览一个工作脚本,但它们都没有工作。我试图自己做,但我总是遇到这个错误:

Cannot read property 'click' of undefined.

首先我做一个:

document.querySelectorAll('.freebirdFormviewerViewNumberedItemContainer');

获取表格的所有部分。它返回正确数量的零件。然后我做一个

item.querySelectorAll(".appsMaterialWizToggleRadiogroupOffRadio");

获取该部分中的所有单选按钮,并返回正确数量的单选按钮。

之后我随机选择一个并执行.click()它,但它给了我这个错误。即使我查询选择其他任何内容,它仍然无法正常工作。

知道如何解决这个问题或谷歌无法操纵它的表格吗?

4

1 回答 1

1

只需查看 google 表单中单选按钮的底层 HTML,我就能够将所有这些类一起使用来隔离每个单选按钮,因此:

var allRadioButtons = document.querySelectorAll(".appsMaterialWizToggleRadiogroupElContainer.exportContainerEl.docssharedWizToggleLabeledControl.freebirdThemedRadio.freebirdThemedRadioDarkerDisabled");
var numberOfRadioButtons = allRadioButtons.length;
function randomNumber(min, max) {
    return Math.floor((Math.random() * max) + min);
}
var randomRadioButtonNumberToSelect = randomNumber(0, numberOfRadioButtons);
allRadioButtons[randomRadioButtonNumberToSelect].click();

为我工作。

这当然只适用于谷歌表单中的一个问题,你将不得不做更多的操作来处理多个问题,我建议首先找到一系列问题,然后为每个问题选择一个孩子的单选按钮随机回答那个问题,然后继续下一个问题

于 2021-01-14T21:53:42.143 回答