命令限制
Restriction of command
我通过按“Enter”(在 Qualtrics 中)为进度编写了一个 JS 代码:
Qualtrics.SurveyEngine.addOnload(function() {
var qid = this.questionId;
document.onkeydown = function(event) {
console.log('keydown', event);
if (event.which == 13) {
event.preventDefault();
jQuery('#NextButton').click();
}
}
});
但是代码也影响了我不感兴趣的部分调查,参与者可以这样进行。
我得到以下建议:
如果您使用 addEventListener() 或 jQuery on() 设置事件,则可以使用 removeEventListener() 或 [=25= 在 addOnUnload() 函数中删除事件] 关闭().
但我不知道如何按照相应的方式修复代码。
也许有人可以帮我修复代码?
我将不胜感激!
执行以下操作。按键事件将仅适用于当前调查页面。
Qualtrics.SurveyEngine.addOnload(function() {
jQuery(document).keydown(function(event) {
if (event.which == 13) {
event.preventDefault();
jQuery('#NextButton').click();
}
});
Qualtrics.SurveyEngine.addOnUnload(function() {
jQuery(document).off('keydown');
});
});
.keydown() 是 .on('keydown', function()... 的快捷方式,不用 qid,所以不需要。 console.log 只是用于调试,因此您也不需要它。
我通过按“Enter”(在 Qualtrics 中)为进度编写了一个 JS 代码:
Qualtrics.SurveyEngine.addOnload(function() {
var qid = this.questionId;
document.onkeydown = function(event) {
console.log('keydown', event);
if (event.which == 13) {
event.preventDefault();
jQuery('#NextButton').click();
}
}
});
但是代码也影响了我不感兴趣的部分调查,参与者可以这样进行。
我得到以下建议:
如果您使用 addEventListener() 或 jQuery on() 设置事件,则可以使用 removeEventListener() 或 [=25= 在 addOnUnload() 函数中删除事件] 关闭().
但我不知道如何按照相应的方式修复代码。 也许有人可以帮我修复代码?
我将不胜感激!
执行以下操作。按键事件将仅适用于当前调查页面。
Qualtrics.SurveyEngine.addOnload(function() {
jQuery(document).keydown(function(event) {
if (event.which == 13) {
event.preventDefault();
jQuery('#NextButton').click();
}
});
Qualtrics.SurveyEngine.addOnUnload(function() {
jQuery(document).off('keydown');
});
});
.keydown() 是 .on('keydown', function()... 的快捷方式,不用 qid,所以不需要。 console.log 只是用于调试,因此您也不需要它。