【发布时间】:2016-12-27 19:33:15
【问题描述】:
我有这个小提琴。我想在这样的过滤器函数中使用 if else 。我有一个工作但循环似乎没有中断。由于它不会中断,因此将为所有未过滤的条件打印 else 部分。如何打破这个循环?或者有什么更好的主意?
我有两个文本框和一个按钮,当我输入标题和数量并点击添加时,我想检查它是否已经存在于桌子上。如果存在,我想将数量替换为新值。如果它不存在,我想添加带有新标题和数量的新行。检查存在对我来说是个谜,根本不起作用。
$('#btnAdd').click(function () {
debugger;
UOMCaption = $('#UOMCaption').val();
UOMQty = $('#UOMQuantity').val();
$("#tbluom tr td:first-child").filter(function () {
if ($(this).text().indexOf(UOMCaption) > -1) {
$(this).next("td").text("found it");
}
else {
$('#tbluom >tbody').append('<tr><td>' + UOMCaption + '</td><td>' + UOMQty + '</td></tr>');
}
});
$('#UOMCaption,#UOMQuantity').val("");
});
【问题讨论】:
-
所以你想在找到第一个元素时打破?
-
您的小提琴与提供的代码不匹配,为什么?
-
如果要在找到第一个元素后返回,则在 if 块内添加 return 语句。
-
有点猜想,但这就是你想要的吗? jsfiddle.net/GEwxw
-
是的,如果我找到我想打破循环的第一个元素。即使我没有找到循环,我也只想做一次 else 部分。目前 else 部分打印的次数与未通过过滤条件的行数一样多。
标签: javascript jquery filter html-table