首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用jQuery在Qualtrics中获取滑块的值?

如何使用jQuery在Qualtrics中获取滑块的值?
EN

Stack Overflow用户
提问于 2016-07-02 03:05:24
回答 4查看 1.4K关注 0票数 2

我需要在Qualtrics中获取滑块的值,以便向用户显示(转换)它。

Here是我正在处理的页面,因此您可以理解下面的内容。我尝试了许多不同的方法,但都不起作用。我的第一个想法当然是:

代码语言:javascript
复制
var val = $j('#QID11~1~toolTip').text();
$j('#value').text(val)

什么都没出现。然后,我尝试使用输入:

代码语言:javascript
复制
var val = $j("input").attr("value");
$j('#value').text(val);

(或者,用$j('#QID11~1~result')代替$j("input"),或者用.val()代替.attr("value"))同样的事情:什么也不显示。

然而,有趣的是,当我将attr("value")替换为attr(" type ")时,类型(“隐藏”)出现了。似乎,由于该值在页面首次加载时未设置,因此jQuery无法找到它。

有人能帮我一把吗?

EN

回答 4

Stack Overflow用户

发布于 2016-07-02 04:40:27

你可以像这样使用prototypejs来实现:

代码语言:javascript
复制
Qualtrics.SurveyEngine.addOnload(function() {
    var current = $('current');
    var result1 = $(this.questiondId + "~1~result");
    new Form.Element.Observer(result1, 0.25, function() {
        current.update(result1.getValue());
    });
});

显示当前值的相应问题文本为:

代码语言:javascript
复制
Current value is: <span id="current">0</span>%

更新(根据请求截图):

票数 1
EN

Stack Overflow用户

发布于 2016-07-06 07:52:50

这里有一个替代方案,也是在jquery上使用prototypejs:

代码语言:javascript
复制
Qualtrics.SurveyEngine.addOnload(function()
{
    var result = $(this.questiondId + '~1~result');
    document.observe( 'mousemove', function(){
        $('SliderValue').update(result.value);
    });

});

请确保在问题的html中的某个位置包含以下内容:

代码语言:javascript
复制
The value is currently: <span id="SliderValue">0</div>

我有一种感觉,你遇到的大多数麻烦都是在调用onload时没有方法来观察变化,在加载时,答案将没有价值,你需要注意这个值以某种方式发生变化。Tom上面的方法每0.25秒轮询一次表单域,而我的方法只要鼠标移动就会运行。这些方法中的任何一种都可以满足您的需求。

票数 0
EN

Stack Overflow用户

发布于 2016-08-06 01:32:45

问题看起来像是波浪,as described in the answers to this question。尝试:

代码语言:javascript
复制
var val = $j('#QID11\\~1\\~toolTip').text();
$j('#value').text(val)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38152424

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档