jQuery .bind用.class

时间:2016-11-14 07:38:45

标签: javascript jquery

我有兴趣学习如何正确地将.bind代码添加到对象,然后他改变了。这个对象不是unic,并且具有id的类选择器,但它有一个<div>包装器:

<div id="GDI">
  <table class = "Tiberium">
  ...
    <tbody>
     <tr>...</tr>
     ...
     <tr>...</tr>
    </tbody>
  </table>
</div>

<div id="NOD">
  <table class = "Tiberium">
  ...
    <tbody>
     <tr>...</tr>
     ...
     <tr>...</tr>
    </tbody>
  </table>
</div>

数据在<tbody>空间中的类“Tiberium”中更改(例如添加了新行),我需要简单警报,然后在GDI表中更改数据,但不知道如何操作。

我尝试的代码:

$('.Tiberium').bind('DOMSubtreeModified', Alert);

警报功能。 这个代码捕获两个表中的更改,然后我收到警报,然后其中一个更改。那么我如何才能跟踪GDI空间中“Tiberium”表中的变化?

P.S。我试过$('#NOD').bind('DOMSubtreeModified', Alert); 但是这段代码连续3次提醒我,并且可能会在函数中运行每个代码3次。 (我认为这种情况发生在这种等级的情况下)。

2 个答案:

答案 0 :(得分:2)

DOMSubTreeModified事件为deprecated。此解决方案的更好替代方法是使用MutationObserver。

USING PERIODIC COMMIT
LOAD CSV WITH HEADERS FROM 'file:///companydata.csv' AS line1

MERGE (company:Company {companyNumber:line1.CompanyNumber,
                        companyName:line1.CompanyName,
                        uri:line1.URI
                          })

每次var toBeObserved = document.getElementsByClassName('Tiberium'); if('MutationObserver' in window) { // ensure browser support var observer = new MutationObserver(myEventHandler); // instantiate observer.observe(toBeObserved, { // start observing childList : true, subtree : true }); } 元素发生变异时,都会调用toBeObserved函数。您可以在此功能中添加自定义代码。

答案 1 :(得分:0)

您可以尝试以下代码:

For Each ctrl In ctrlParent.Controls
    If ctrl.GetType Is GetType(DataGridView) Then
        ....
    End If
Next