javascript - 将搜索结果添加到表中而不替换以前的结果

标签 javascript arrays angularjs asp.net-web-api

我有一个搜索文本框,可以通过 API 从数据库中搜索产品记录。我将 产品名称 作为搜索文本并将结果显示到表格中。但是,问题是在新的搜索之后,只有新的搜索记录显示在该表中。

我想在之前的结果之后插入新的搜索结果。

这是我的搜索表单 enter image description here

它将显示结果如下表。我添加了“添加到列表”以清除搜索文本框并输入新的输入。 enter image description here

我想在这条记录(黄色区域)之后添加新的搜索记录,而不是替换它。我正在使用 angularjs 和 web api。这是我的搜索逻辑

Angular Controller

$scope.search = function () {
    var price = '{materialName: "' + $scope.Prefix + '" }';
    var post = $http({
        method: "POST",
        url: "/api/Price/GetMaterial",
        dataType: 'json',
        data: price,
        headers: { "Content-Type": "application/json" }
    });
    post.success(function (data, status) {
        $scope.Customers = data;
        $scope.IsVisible = true;
    });
    post.error(function (data, status) {
        $window.alert(data.Message);
    });
};

在 ng-repeat 中调用它并显示它。如何实现新的搜索记录并添加到表中

最佳答案

在发布成功时,不是执行“$scope.Customers = data”,而是用从服务器返回的值替换 $scope.Customers 的所有值,只需将值附加到 $ 末尾的“data”中范围。客户。您可以使用以下代码。

$scope.Customers = $scope.Customers.concat(data);

关于javascript - 将搜索结果添加到表中而不替换以前的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53455873/

相关文章:

c - C 语言智能计算机井字游戏移动选择

angularJS $on 事件处理程序触发顺序

angularjs - 如何在输入字段中自动插入小数

javascript - Bootstrap 3 btn-group宽度使用ng-repeat改变

c# - Jquery AJAX 与 ASP.NET WebMethod 刷新整个页面

javascript - Protractor :如何测试 window.print()

调用 List.remove(index) 时出现 java.lang.UnsupportedOperationException

c - atof 练习(K&R 第 4.2 节,练习 4.2)

javascript - 第一个函数在 javaScript 中结束后如何运行第二个函数?

没有 .innerHTML 的 html 中的 JavaScript 数组内容