.change()函数不起作用

时间:2014-12-11 16:40:12

标签: javascript jquery onchange

我正在使用.change()函数来检查输入内部的更改,并在发生更改时发出警报,但我必须做错了,因为这不起作用:

jsFiddle

$(document).ready(function() {
    var sizes = ["0", "1", "2", "3", "4", "5", "5", "6", "7"];

$("#slider").slider({
      orientation: "vertical",
      range: "min",
      animation:false,
      min: 0,
      max: 8,
      value: 0,
  slide: function(event, ui) {
      $('.convert').val(sizes[ui.value]);      
  }
});

       $('.convert').change(function(e){
           alert("works?");
       });

       $('.convert').keypress(function(e){
           alert("works?");
       });

 });

3 个答案:

答案 0 :(得分:1)

输入文字,然后将注意力集中在事件上,我认为在你模糊之前它不会发生变化

将活动更改为$('.convert').on('keyup', function(){ alert('foo');});(感谢Chris B。)

请参阅更新的小提琴:http://jsfiddle.net/6ys3derm/2/

答案 1 :(得分:1)

嗯。你能试试吗?

$('document').on('change', '.convert', function(){
  alert("it works :-)");
});

答案 2 :(得分:1)

滑块有自己的更改事件

<强> fiddle

$(document).ready(function() {
    var sizes = ["0", "1", "2", "3", "4", "5", "5", "6", "7"];

  $("#slider").slider({
        orientation: "vertical",
        range: "min",
        animation:false,
        min: 0,
        max: 8,
        value: 0,
    slide: function(event, ui) {
        $('.convert').val(sizes[ui.value]);      
    },
      change:function(){                     //called onchange
          alert("slider changed");  
      }
  });

});