无法使用两个变量返回obj

时间:2016-09-08 08:07:22

标签: jquery json ajax filter

以下jQuery正在成功运行。我要做的是按Id搜索。更具体。我想按NameId进行搜索。 有什么建议吗?

$(function() {
    $("#KUNDE").focus();
});

var uri = 'json.json';

function find() {
    var info = $('#KUNDE').val();
    $.getJSON(uri).done(function(data) {
        var item = data.filter(function(obj) {
            return obj.name === info;
            //return obj.name,ID === info;
            //return { obj: name, obj:ID } === info;
            //return ['ID', 'name'] == info;
        })[0];
        if (typeof item !== 'undefined' || item !== null) {
            $("ul").append("<li>" + 'ID      = ' + item.ID, 'Name    = ' + item.name, "<br />" + 'Phone      = ' + item.phone, "<br />" + 'Contact       = ' + item.contact, "<br />" + 'BalanceLCY      = ' + item.balanceLCY, "<br />" + 'CreditLimitLCY       = ' + item.creditLimitLCY, "</li>")
        }
    }).fail(function(jqXHR, textStatus, err) {
        $('#RESULTS').text('Error: ' + err);
    });
}

var options = {
    url: "json.json",
    getValue: "name",
    list: {
        match: {
            enabled: true
        }
    },
    theme: "square"
};

$("#KUNDE").easyAutocomplete(options);

1 个答案:

答案 0 :(得分:2)

您只需要使用&#39;或&#39;过滤器逻辑中的条件,如下所示:

var item = data.filter(function(obj) {
    return obj.name === info || obj.ID === info;
}).get(0);