2013-04-29 70 views
0

我试图从jquery slider交互式地取值,但它不起作用。这里可能缺少什么? 我的代码如下:从jquery滑块中取值

jquery: 
var min_val = 0.5; 
var max_val = 10; 
var default_val = 5; 

$('#teaching').slider({ 
    min: min_val, 
    max: max_val, 
    value: default_val, 
    step: 0.1, 
    slide: function(event, ui){ 
     $('#feed1').html(ui.value); 
     var list_value = ui.value; 

     $('#teaching_hidden').val(ui.value); //problem here 


     if(list_value < 4){ 
      $('#feed1_img').attr('src','images/sad.png'); 
     }else if(list_value >= 4 && list_value < 6){ 
      $('#feed1_img').attr('src','images/confused.png'); 
     }else if(list_value >= 6 && list_value < 9){ 
      $('#feed1_img').attr('src','images/like.png'); 
     }else{ 
      $('#feed1_img').attr('src','images/happy.png'); 
     } 
    } 
}); 

的值应该是动态变化的,但如果我尝试打印超出输出[object Object]的时间随机数。请帮忙。

我的目标是将ui.value存储在teaching_hidden这是一个隐藏字段。

回答

0
var a = $('#teaching_hidden').val(ui.value); 

眼下,a取代的#teaching_hiddenul.value值的值。

其中一个通常不会替换var中的值。

你想在这里做什么?你要的值是#teaching_hidden还是值ui.value?目前,a未设置为变量。它是一个在变量内部运行的函数,用一个元素的值替换另一个元素的值。

如果你想要的任何这些元素的值,你会做:

var a = $('#teaching_hidden').val(); 

OR

var a = $('ui.value').val(); 

编辑另外,请注意.val()用于retriece的value=属性从一个元素,而不是它的内部字符串。如果你想这样做,你会用户$('#element').html();

阅读差异。

http://api.jquery.com/val/

http://api.jquery.com/html/

+0

我编辑了问题。这个例子来自我的练习代码,当我尝试的时候。我的目标是将'ui.value'分配给'teaching_hidden'。 – 2013-04-29 13:18:24

+0

'teaching_hidden'是一个隐藏的html字段。 – 2013-04-29 13:19:40

+0

您还需要在问题中加入HTML标记。没有看到你想要操纵的东西,很难排除故障。如果你想获得当前值,那么'var a = $('#teaching_hidden')。val();'将取代它的值是'var a = $('ul.value')。 '。然后把它放到一个测试div中。 '$('#test')。html(a)';请记住它是'

'而不是
myVal
'。 – Plummer 2013-04-29 14:00:15