2014-04-28 5 views
0

Je rencontre un problème pour essayer de voir si une valeur correspond dans un tableau contenant un objet.Rechercher une valeur dans un objet - JQuery

Voici ce que je fais:

var found = $.inArray(opt.ifpo_width, selectedOptions) > -1; 

Disons que opt.ifpo.width contient 650. selectedOptions contient un objet avec une valeur de 650 donc je veux found pour retourner 0 parce que cela signifie que la valeur a été trouvée.

Heres un exemple de console.log de selectedOptions:

[Object, Object] 
0: Object 
active: true 
...... 
ifpo_width: "650" <-- value I am checking 
ifpo_x: "153" 
ifpo_y: "86" 
shown: false 
__proto__: Object 
1: Object 
active: true 
ifpo_width: "650" <-- this other object should not be here because there is already a width of the same value. 
ifpo_x: "140" 
ifpo_y: "102" 
..... 

Quelles sont vos suggestions et réflexions sur la façon dont je peux vérifier selectedOptions pour la valeur en cours de vérification avec opt.ifpo_width?

Répondre

1

si ifpo_width peut changer, vous pouvez utiliser une fonction comme celle

function search(property, arr, value) { 
     var t; 
     for (t = 0; t < arr.length; t++) { 
      if (arr[t][property] == value) 
       return true; 
     } 

     return false; 
    } 

et l'appeler avec

search("ifpo_width", YourArray, selectedOptions) 

autrement, plus simple,

function search(arr, value) { 
     var t; 
     for (t = 0; t < arr.length; t++) { 
      if (arr[t].ifpo_width == value) 
       return true; 
     } 

     return false; 
    } 
Questions connexes