簡體   English   中英

Qualtrics:按Enter鍵模擬繼續按鈕

[英]Qualtrics: Pressing enter key to emulate continue button

我是JavaScript的新手,目前正在嘗試向Qualtrics調查中添加自定義代碼,以便按Enter鍵繼續進行調查。 我有一個應該工作的代碼; 但是,我收到“意外令牌”錯誤。

這是代碼:

Qualtrics.SurveyEngine.addOnload(function()
{
    document.addEventListener("keydown", function(e) {
        if (e.keyCode === 13) {

            function(){
                that.clickNextButton();
            }

  }
    }

});

在Qualtrics API文檔中找到了“ clickNextButton”函數,該函數應模擬下一次單擊按鈕。 該函數是clickNextButton(),但是提供的示例的代碼為that.clickNextButton()。

他們使用的示例如下:

//Hides the next button and displays the question
//for 5 seconds before moving to the next page
this.hideNextButton();
var that = this;
(function(){that.clickNextButton();}).delay(5);

我不需要隱藏按鈕功能或延遲功能,而只是想提供一個如何使用它的示例。

非常感謝您的幫助,在此先感謝您!

這是一個可行的簡化版本(已更新為隱藏NextButton):

Qualtrics.SurveyEngine.addOnload(function()  {
    $('NextButton').hide();         
    document.on("keydown", function(e) {
         if (e.keyCode === 13) $('NextButton').click();
    });
});

這取決於范圍,或者具體取決於功能clickNextButton所在的位置。 如果您不擔心超時,則應該可以從Qualtrics.SurveyEngine函數中刪除單詞“ that”,它應該可以正常工作。

該功能可能在您當前的范圍內不可用。 因此,如果刪除“ that”不起作用。 放回去,並把var that = this; 在函數調用之前的行中。 根本不是一種整齊的做事方式,但它可以為您解決問題。

值得一讀。 http://www.w3schools.com/js/js_scope.asp

肉餅不是在說什么……我會為范圍做任何事情……。但是我不那樣做嗎?

如我的評論中所述...看看是否可以解決您的錯誤

Qualtrics.SurveyEngine.addOnload(function()
    {
        document.addEventListener("keydown", function(e) {
            if (e.keyCode === 13) {

                function(){
                    that.clickNextButton();
                }

            }
        } ); // here was a missing bracket here
    });

因此,我在問題中嵌入了一個視頻,因此我需要禁用“下一步”按鈕15秒鍾,這樣我才能知道觀看了自動播放的視頻。

這對我來說非常有效:

Qualtrics.SurveyEngine.addOnload(function()
{
//Hides the next button and displays the question
//for 15 seconds before moving to the next page
this.disableNextButton();
var that = this;
(function(){that.enableNextButton();}).delay(15);

});

您可以將(15)秒更改為任意數字,“下一步”按鈕將被激活,可以單擊下一步,但是不會自動將您發送到下一頁。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM