0

我正在研究 Asp.NET (2.0)。我有一个这样的json响应。

{
  "0": {
    "EMPLOYEE_CODE": "049",
    "EMPLOYEE_NAME": "Craig J Miller",
    "EMPLOYEE_CITY": "Tustin",
    "EMPLOYEE_STATE": "CA"
  },
  "1": {
    "EMPLOYEE_CODE": "050",
    "EMPLOYEE_NAME": "Stephen B",
    "EMPLOYEE_CITY": "FOLSOM",
    "EMPLOYEE_STATE": "CA"
  },
  "2": {
    "EMPLOYEE_CODE": "051",
    "EMPLOYEE_NAME": "Mithali Raj",
    "EMPLOYEE_CITY": "Glendale",
    "EMPLOYEE_STATE": "AZ"
  },
  "3": {
    "EMPLOYEE_CODE": "052",
    "EMPLOYEE_NAME": "Gordon Green",
    "EMPLOYEE_CITY": "Pheonix",
    "EMPLOYEE_STATE": "AZ"
  }
}

现在我想过滤上面的 json 响应EMPLOYEE_STATE作为搜索条件。

我是 JSON 和 jQuery 的新手。

4

2 回答 2

1

你可以试试这个

function filter_by_employee_state(query, obj)
{
    var new_obj={}, total=0, query=query.toLowerCase();
    for(var i in obj)
    {
        var emp_st=obj[i].EMPLOYEE_STATE.toLowerCase();
        if(emp_st==query) { new_obj[i]=obj[i]; total++; }
    }
    if(total>0) return new_obj;
    return false;
}

// Filter the data object
var filtered_data=filter_by_employee_state('ca', data);

一个例子在这里

于 2012-12-07T16:47:20.917 回答
0

当归结为浏览器时,如果您使用 Jquery 的 get 或相关方法,它只会变成一个 json 对象。

如果您已经知道并且只想过滤数组,请查看: http: //linqjs.codeplex.com

尽管根据您的情况,在服务器上过滤它可能更可取。

于 2012-12-06T22:56:27.957 回答