我正在尝试将两个按钮放置在当前活动表行的TD
下面。我希望他们看起来像这样:
我尝试了几十种方法,但没有一种能达到预期的效果:要么按钮根本不出现,要么它们出现在**当前活动的TD
之后,或所有表行之后。
我发现的唯一有效的方法是这样的:
$(this).next().prepend(buttons);
但结果并不特别美观:
完全相同的结果是实现与:
$(this).next().append(buttons);
如果我用
$(this).append(buttons);
按钮被插入到我正在编辑的单元格中,它们的HTML也被保存,所以这不起作用。
我甚至尝试在下一个表格行(<td class="controls"></td>
)中创建一个特殊的空TD
,以便在其中插入按钮,但我找不到针对该特定单元格的正确代码,而没有针对其他单元格的代码。然而,这种方法并不是最好的,因为按钮将同时出现在源单元格和目标单元格的下一行的第一个单元格中。我的最终目标是完成第一个屏幕截图上显示的内容:这些按钮应该出现在当前活动单元格的正下方。
以下是我尝试过的一些jQuery方法:
$(this).next('td.controls').append(buttons); /* nothing is displayed */
$(this).next('tr td.controls').append(buttons); /* nothing is displayed */
$(this).parent().append(buttons); /* the buttons appear after and outide the table */
$(this).parent().prepend(buttons); /* the buttons appear before the first cell on the active row */
$(this).parent().next().prepend(buttons); /* the buttons are inserted inside the `td.controls` cell but for both the source and the target */
这里有一个小提琴:https://jsfiddle.net/cheeseus/cf5qkba7/4/
我希望我已经提供了所有相关的细节和代码。如果没有,请告诉我。
1条答案
按热度按时间h9a6wy2h1#
使用jQuery
find
方法。给定一个表示一组DOM元素的jQuery对象,.find()方法允许我们在DOM树中搜索这些元素的后代,并从匹配的元素构造一个新的jQuery对象。
上面的js代码将在
.read-only
类的当前索引中找到下一个td
,并在它之前插入按钮。我还添加了以下CSS来正确定位单行按钮:
查看以下示例: