比较值并找到缺失的

时间:2014-05-23 16:09:18

标签: javascript jquery json

在以下JSON数据中,A项在allergyfree字符串中有“gluten”,而B项没有。我可以在A项目中添加<h4>Yes</h4>,但我还想在B项目中添加<h4>No</h4>,因为它在字符串中不包含“gluten”。其他过敏症的价值也是如此。

有没有办法比较循环中A项和B项之间的过敏自由字符串,这样如果项目具有值,例如麸质,则打印<h4>Yes</h4>,如果缺少,则打印{{ 1}}?

<h4>No</h4>

代码:

[{"title":"A Item","allergyfree":"sugar,salt,yeast,wheat,gluten"},{"title":"B Item","allergyfree":"sugar,salt,starch,yeast,wheat,preservatives"}]

HTML

$.ajax({
    url: source.json,
    success: function (data) {
        var item_html;

        $(data).each(function (index, item) { 
         var allergyfree = item.allergyfree;           
         if(allergyfree.length !== 0) {

           allergyfree = allergyfree.split(",");

           $.each(allergyfree,function(i,allergy){

            if (?????????????????) 
             {
               $('.'+ allergy).html('<h4>Yes</h4>') 
             }
            else
             { 
               $('.'+ allergy).html('<h4>No</h4>')
             }

           });
          }

        });
    },
    error: function () {}
});

1 个答案:

答案 0 :(得分:0)

你可以使用$.inArray function它返回数组中item的位置,如果item不存在则返回-1:

if ($.inArray(alergy,allergyfree)!=-1)