从td中删除flexmenu属性

时间:2015-06-04 00:40:14

标签: jquery

<tbody id="last" data-bind="foreach: stuDetails.GetStudentSearchModel">
                        <tr>
                            <td data-bind="text: $index()+1"></td>
                            <td><input type="checkbox" /></td>
                            <td data-bind="text: studid"></td>
                            <td data-bind="trimText: studname"></td>
                        </tr>
                    </tbody>

以下代码将为所有td

添加flexmeny
var TrLoop = 1;
               $("#tblStuList tbody tr").each(function () {
                   $(this).find('td').each(function () {
                       $(this).addflexmenu('flexmenu' +StudIDArray[TrLoop]);
                      // $(this).attr('nowrap', 'nowrap');
                   });
                   TrLoop = TrLoop + 1;
               });

如何从复选框td

中删除flexmenu属性
<td><input type="checkbox" /></td>

除此之外我想将nowrap添加到:

<td data-bind="trimText: studname"></td>

1 个答案:

答案 0 :(得分:0)

由于所有其他td元素都有data-bind个属性,因此您只能定位td个元素

$("#tblStuList tbody tr").each(function () {
    $(this).find('td[data-bind]').each(function () {
        $(this).addflexmenu('flexmenu' + StudIDArray[TrLoop]);
        // $(this).attr('nowrap', 'nowrap');
    });
    TrLoop = TrLoop + 1;
});

另一种选择是将td定位在其位置 - 这是第二个td

$("#tblStuList tbody tr").each(function () {
    $(this).find('td:not(:nth-child(2))').each(function () {
        $(this).addflexmenu('flexmenu' + StudIDArray[TrLoop]);
        // $(this).attr('nowrap', 'nowrap');
    });
    TrLoop = TrLoop + 1;
});

或者你可以说td没有输入

$("#tblStuList tbody tr").each(function () {
    $(this).find('td:not(:has(input))').each(function () {
        $(this).addflexmenu('flexmenu' + StudIDArray[TrLoop]);
        // $(this).attr('nowrap', 'nowrap');
    });
    TrLoop = TrLoop + 1;
});