使用javascript捕获对变更事件的输入

时间:2015-10-22 20:21:29

标签: javascript jquery

首先,我使用此功能:

jQuery(document).on('propertychange change click keyup input paste', 'input[name="wager_id_111"]', function(){
        var thisValue = jQuery(this).val();
        var amountReal = jQuery('.amount_visible');

        if ( thisValue != '' ){
            var amount_in_btc = thisValue / 1000;
            amount_in_btc = amount_in_btc.toFixed(5);
            amount_in_btc = parseFloat(amount_in_btc);
            amountReal.show(1, function(){
                amountReal.find('span').html('= ' + amount_in_btc);
            });
        } else {
            amountReal.hide();
        }
    });

并且当用户类型将其作为输入时,它可以工作。问题是,当通过代码更改输入值时,我无法检测到它已被更改。那里有按钮有多少金额添加到输入(如1,10,50,100),当用户选择其中之一时,输入值正在改变jQuery('input[name="wager_id_111"]').val(newVal);但正如我所说,我在下面显示的功能可以&#39抓住这个。什么选择让它起作用?

小提琴:

fiddle link

2 个答案:

答案 0 :(得分:2)

您可以将以下代码行$('input[name="wager_id_111"]').trigger('change');添加到.click()函数

演示:http://jsfiddle.net/et3gsf9w/1/

答案 1 :(得分:1)

解决方案是将操作输入值的代码放入一个函数中,并调用它两次,一次是在事件被引发时,另一次是通过代码。