Javascript IE中表上的更改事件失败

Javascript IE中表上的更改事件失败,javascript,jquery,events,delegation,Javascript,Jquery,Events,Delegation,我正在使用jQuery捕获表上的更改事件。该表有许多行,每行有几个输入框和一个复选框。为此,我使用事件委托。我正在捕获tbody级别的任何更改。这是下面的代码 $j('#orderItems tbody').change(function (event) { var target = $j(event.target); var nodeName = $j(target).attr('nodeName').toLowerCase(); if (nodeName == 'in

我正在使用jQuery捕获表上的更改事件。该表有许多行,每行有几个输入框和一个复选框。为此,我使用事件委托。我正在捕获tbody级别的任何更改。这是下面的代码

$j('#orderItems tbody').change(function (event) {
    var target = $j(event.target);
    var nodeName = $j(target).attr('nodeName').toLowerCase();
    if (nodeName == 'input') {
        if ($j(target).hasClass('partnum')) {
            var val = $j(target).attr('value');
            dsOrder.getItem(target);
            dsOrder.updateActiveIndex(target);
        }
        if ($j(target).hasClass('qty')) {
            var val = $j(target).attr('value');
            dsOrder.updateQty(target);
            dsOrder.updateActiveIndex(target);
        }
        if ($j(target).hasClass('unitprice')) {
            var val = $j(target).attr('value');
            dsOrder.updatePrice(target);
            dsOrder.updateActiveIndex(target);
        }
    }
})
这段代码在Firefox中运行良好,但IE中没有捕获更改事件。我希望使用事件委派来处理此解决方案,而不是将每个事件附加到每个输入元素上。我还希望避免使用jQuery以每个元素为目标,因为表行是动态构建的,并且解除绑定/绑定事件看起来有点混乱(这只是我的看法)


关于如何实现这一点,您有什么想法吗?

您实际上是在使用冒泡来获取祖先元素上的事件,而不是捕获(IE不支持,jQuery也不使用)。不幸的是,
onchange


我认为你只需要针对输入。(不幸的是,“live”函数也不支持onchange。)

您实际上是在使用冒泡来拾取祖先元素上的事件,而不是捕获(IE不支持,而jQuery不使用)。不幸的是,
onchange

我认为你只需要针对输入。(不幸的是,“live”函数也不支持onchange。)