【问题标题】:how to filter results with JSON如何使用 JSON 过滤结果
【发布时间】:2017-02-02 13:20:50
【问题描述】:

我在控制器中有 JSONResults,现在我在 JSONResults 中拥有表中的所有数据,在客户端的 html 详细视图页面上,我有 javascript 并获取所有数据。 如何从 Json 中获取数据,其中客户端名称等于 klID(这是 json 字符串,其中客户端名称)。

我尝试了这个,但再次查看所有数据。

for (var i = 0; i < json.length; i++) {
 $.data = (json[i].klID = "@Html.DisplayFor(model => model.klient)");
                    var dateString = json[i].datum.substr(6);
                    var currentTime = new Date(parseInt(dateString));
                    var month = currentTime.getMonth() + 1;
                    var day = currentTime.getDate();
                    var year = currentTime.getFullYear();
                    var date = day + "/" + month + "/" + year;

                    tr = $('<tr/>');
                    tr.append("<td>" + json[i].pID + "</td>");
                    tr.append("<td id='date'>" + date + "</td>");
                    tr.append("<td>" + json[i].description + "</td>");
                    tr.append("<td>" + json[i].popust + "</td>");
                    $('table').append(tr);

请帮助我。谢谢

【问题讨论】:

    标签: javascript json api model-view-controller filter


    【解决方案1】:

    代码与您的问题无关,我在这里没有看到任何文件管理器。如果您只想显示 kIID == 客户端,只需输入 if 条件如下

    if(json[i].klID === 'What ever name'){
     var dateString = json[i].datum.substr(6);
                        var currentTime = new Date(parseInt(dateString));
                        var month = currentTime.getMonth() + 1;
                        var day = currentTime.getDate();
                        var year = currentTime.getFullYear();
                        var date = day + "/" + month + "/" + year;
    
                        tr = $('<tr/>');
                        tr.append("<td>" + json[i].pID + "</td>");
                        tr.append("<td id='date'>" + date + "</td>");
                        tr.append("<td>" + json[i].description + "</td>");
                        tr.append("<td>" + json[i].popust + "</td>");
                        $('table').append(tr);
    }
    

    【讨论】:

      【解决方案2】:

      在 ES6 中你可以做一个真正的过滤器:

      const myArray = ['a', 2, 'b', 3, 4];
      const filtered = myArray.filter((entry) => (
        isNaN(parseInt(entry))
      );
      console.log(filtered); // output: ['a', 'b']
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-10-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-04-01
        • 2012-08-23
        • 2020-08-13
        相关资源
        最近更新 更多