首页 > 解决方案 > 数组推送重复或跳过搜索功能内的推送

问题描述

我写了这段代码。按下回车后将输入值发送到 API。我尝试使用数组,但代码导致重复。但重复并不是唯一的问题。某些值不会添加到数组中。第一次按 enter 后始终为 1 个值。无论 API 状态如何,都会发生丢弃值和重复项。

<input type="text" name="qr"  class="search form-control"/>

$(document).ready(function() {
    var exist_qrs = new Set();
    // I try use array but code duplicate elements
    $("input").on("keydown", function search(e) {
        if (e.keyCode == 13) {
            input_qr = $(this).val();
            $.ajax({
                url: "API URL",
                type: "POST",
                dataType: 'json',
                data: {
                    qr: input_qr
                },
                success: function(response) {
                    if (response[8] == 1) {
                        // response[8] - status from api
                        exist_qrs.add(input_qr);
                        console.log(exist_qrs)
                    }
                }
            })
            $(this).val('')
        }
    });
});

标签: javascriptjqueryajax

解决方案


推荐阅读