我需要在Qualtrics中获取滑块的值,以便向用户显示(转换)它。
Here是我正在处理的页面,因此您可以理解下面的内容。我尝试了许多不同的方法,但都不起作用。我的第一个想法当然是:
var val = $j('#QID11~1~toolTip').text();
$j('#value').text(val)
什么都没出现。然后,我尝试使用输入:
var val = $j("input").attr("value");
$j('#value').text(val);
(或者,用$j('#QID11~1~result')代替$j("input"),或者用.val()代替.attr("value"))同样的事情:什么也不显示。
然而,有趣的是,当我将attr("value")替换为attr(" type ")时,类型(“隐藏”)出现了。似乎,由于该值在页面首次加载时未设置,因此jQuery无法找到它。
有人能帮我一把吗?
发布于 2016-07-02 04:40:27
你可以像这样使用prototypejs来实现:
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());
});
});
显示当前值的相应问题文本为:
Current value is: <span id="current">0</span>%
更新(根据请求截图):
发布于 2016-07-06 07:52:50
这里有一个替代方案,也是在jquery上使用prototypejs:
Qualtrics.SurveyEngine.addOnload(function()
{
var result = $(this.questiondId + '~1~result');
document.observe( 'mousemove', function(){
$('SliderValue').update(result.value);
});
});
请确保在问题的html中的某个位置包含以下内容:
The value is currently: <span id="SliderValue">0</div>
我有一种感觉,你遇到的大多数麻烦都是在调用onload时没有方法来观察变化,在加载时,答案将没有价值,你需要注意这个值以某种方式发生变化。Tom上面的方法每0.25秒轮询一次表单域,而我的方法只要鼠标移动就会运行。这些方法中的任何一种都可以满足您的需求。
发布于 2016-08-06 01:32:45
问题看起来像是波浪,as described in the answers to this question。尝试:
var val = $j('#QID11\\~1\\~toolTip').text();
$j('#value').text(val)
https://stackoverflow.com/questions/38152424
复制相似问题