如何解决如何检查Jquery中的重复项
嗨,我需要Jquery的帮助。实际上,我使用Jquery创建表,但我不想插入已经插入的那些值。
我在那个框中有一个下拉框,我有一些ProductName和两个文本框,我在其中输入数量和价格。
现在,如果我再次以不同的价格和数量插入相同的项目,则将其输入。
我想要,当我单击“添加到列表”按钮时,我将收到一条警报消息,指出“已插入项目”。我为此做了很多尝试,但是我为此失败了。
让我分享您的代码。请帮助我。
$("#addToList").click(function (e) {
debugger;
e.preventDefault();
if ($.trim($("#StockID").val()) == "" || $.trim($("#Quantity").val()) == "" || $.trim($("#Price").val()) == "")
return;
var orderid
var productName = $("#StockID option:selected").text();
var pid = $("#StockID option:selected").val();
let price = $("#Price").val();
let quantity = $("#Quantity").val();
var tmp1 = {};
tmp1.productName = $("#StockID option:selected").text();
tmp1.pid = $("#StockID option:selected").val();
tmp1.price = $("#Price").val();
tmp1.quantity = $("#Quantity").val();
tmp1 = {};
if (tmp1[productName]) {
alert('Item is already added !');
}
else {
let detailsTableBody = $("#detailsTable tbody");
var productItem = `<tr>
<td pid=${pid}>
${productName}
</td>
<td><span data-line_qty="${quantity}" data-itemId="0" href="#" class="qtyItem" >${quantity}</span></td>
<td>${price}</td>
<td>${(parseFloat(price) * parseInt(quantity))}</td>
<td><a data-line_total="${(parseFloat(price) * parseInt(quantity,10))}" data-itemId="0" href="#" class="deleteItem">Remove</a></td>
</tr>`;
detailsTableBody.append(productItem);
calc_total();
clearItem();
}
});
解决方法
$("#addToList").click(function (e) {
debugger;
e.preventDefault();
if ($.trim($("#StockID").val()) == "" || $.trim($("#Quantity").val()) == "" || $.trim($("#Price").val()) == "")
return;
var orderid
var productName = $("#StockID option:selected").text();
var pid = $("#StockID option:selected").val();
let price = $("#Price").val();
let quantity = $("#Quantity").val();
var isAdded = false;
$("#detailsTable tr").each(function(e) {
if ($(this).find("> td:first-child").attr('data-pid') == pid) {
isAdded = true;
return false;
}
});
if (isAdded) {
alert('Item is already added !');
}
else {
let detailsTableBody = $("#detailsTable tbody");
var productItem = `<tr>
<td data-pid="${pid}">
${productName}
</td>
<td><span data-line_qty="${quantity}" data-itemId="0" href="#" class="qtyItem" >${quantity}</span></td>
<td>${price}</td>
<td>${(parseFloat(price) * parseInt(quantity))}</td>
<td><a data-line_total="${(parseFloat(price) * parseInt(quantity,10))}" data-itemId="0" href="#" class="deleteItem">Remove</a></td>
</tr>`;
detailsTableBody.append(productItem);
calc_total();
clearItem();
}
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。