$('#changeRows').on('change', function(){
var changedValue = $('#changeRows').val();
alert("This is my value: "+changedValue);
//do my stuff
}
setTimeout(function() {
$('#changeRows').val("<?=$contentData['rows'];?>");
}, 1500);
我怎样才能让它按预期工作?价值变了,但是变化没有被称为......
答案 0 :(得分:1)
当通过 GUI而不是通过代码更改值时会触发更改事件。虽然您可以使用.trigger("change")
或change()
setTimeout(function() {
$('#changeRows').val("<?=$contentData['rows'];?>").change();
}, 1500);
答案 1 :(得分:1)
只有在用户操作导致更改
时才会触发更改事件如果程序化更改,您需要手动触发它,您可以使用.change()或.trigger('change')
setTimeout(function() {
$('#changeRows').val("<?=$contentData['rows'];?>").change();
}, 1500);
答案 2 :(得分:1)
您可以尝试使用jquery的主体进行更改: -
$('body','#changeRows')。on('change',function(e){
});
或者如果动态制作dom中的元素,您可以选择以下jquery的实时更改:
$('。changeRows')。live('change',function(){
});