绑定敲除后如何访问DOM元素?

时间:2018-07-30 05:10:35

标签: knockout.js

我想在剔除绑定后访问DOM元素。 我想访问tr:first-child

如何访问?请帮助我

  $("#account_tab_m2005 table tbody tr:first-child td .popOver").click(function(){
        alert("a");
        $(this).css('z-index',11);
    });

    $("#account_tab_m2005 table tbody tr:nth-child(2) td .popOver").click(function(){
        $("#account_tab_m2005 table tbody tr:first-child td .popOver").css('z-index',10);
        $(this).css('z-index',10);
    });
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.2/knockout-min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="account_tab_m2005">
    <table>
        <tbody data-bind="foreach: orderArray_tab, visible: orderArray_tab().length > 0">
            <tr>
                <td>...</td>
            </tr>
        </tbody>
    </table>
</div>

1 个答案:

答案 0 :(得分:0)

一种可能的方法是在foreach中使用$ index()为firstChild提供不同的模板。看起来您正在尝试获取第一个更改其CSS的元素。只需在此处使用其他类/ id即可。

<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.2/knockout-min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="account_tab_m2005">
    <table>
        <tbody data-bind="foreach: orderArray_tab, visible: orderArray_tab().length > 0">
            <!-- ko if: $index() === 0 -->
            <tr id="firstChild">
                <td>...</td>
            </tr>
            <!-- /ko -->
            <!-- ko if: $index() !== 0 -->
            <tr>
                <td>...</td>
            </tr>
            <!-- /ko -->
        </tbody>
    </table>
</div>

$('#firstChild').css('z-index', 11)