jquery中监听输入框input事件

1、需求:

        

01一行的input只读,值=02+03+04

当修改02、03、04中的任何一个输入框时,01中的值就会改变,并等于02/03/04之和

2、解决思路:

        (1)html:

                在02/03/04所有的input上添加class="valueChange"

        οninput="value=value.replace(/[^\d]/g,'')" 这个是为了让输入框只能输入数字

(2)jquery:

         /**
         * 修改输入框监听事件
         * class为valueChange的input绑定监听事件,
         * 获取当前修改的input   id
         * 02、03、04的input 中id是有规律的,截取当前input的id,获取公共id标识符
         * 找到02、03、04的inputid   相加
         * 将结果赋值给01对应的input
         */
        propertyChange: function () {
            var self = this;
            $('.valueChange').bind('input propertychange', function () {
                var changeId = $(this).attr("id");//获取修改的input的id
                var data = $('#' + changeId).val();
                if (data) {
                    var publicId = changeId.substr(2, changeId.length);
                    var totalValue = parseInt($('#1_' + publicId).val()) +parseInt($('#2_' + publicId).val()) + parseInt($('#3_' + publicId).val());
                    $('#0_' + publicId).prop('value', totalValue);//将01行对应的input的值改变
                }
            })
        },

 

你可能感兴趣的:(jquery,html5,jquery,html)