javascript - 如何改变元素的价值从曾曾...曾祖父
问题描述
我有动态生成的面板,在每个面板中都有一个动态生成的表格。
通过单击删除按钮,我想减少 `span.rows-counter 的值,但只减少其各自面板的值。
我目前为此操作完全重新加载页面,显示更新的值,但我希望这种体验更好,只需降低计数器。
解决方案
使用目标属性匹配正确的面板父级。看起来像这样:
$(".deleteItem").click(function(){
let targetId = $(this).closest(".collapse").attr("id");
let counter = $(".list-group-item[data-target='#"+ targetId +"']").find("#counter-" + targetId);
counter.text(parseInt(counter.text()) - 1);
});
几乎总是有一个使用这些 jquery 函数的组合的解决方案:closest(); 父母();孩子们(); 下一个(); 上一个();寻找();
此外,使用更详细的类名通常会简化解决方案。例如,我会给 .list-group-item 另一个类,如 .menu-item。
推荐阅读
- php - 有没有办法让 Laravel 7 多态关系与 Laravel 8 一起工作?
- android - android:notificationManager setWhen() 不起作用
- docker - 是否可以从一个 docker 容器提供两个或多个静态站点?
- php - 每个请求带有代理的 PHP Guzzle Pool 请求
- select - Blazor 阻止选择元素中的键盘输入
- javascript - jspdf中的嵌套表
- c - 在 C 中使用缓冲区
- php - 无效的语言:“hreflang”上的“fil”
- android - Jetpack ComposeleadingIcon 不可见
- python - 获取文件最后修改日期和文件名 pyspark 的脚本