0

名前の文字列と値の配列で構成されるJSONオブジェクトがあります。配列の1つに文字列がある場合、それが属する名前を見つけるにはどうすればよいですか?

例:次のJSONオブジェクトがある場合、文字列「1」が与えられたときにjQueryを使用して回答「G1」を取得したり、文字列「4」が与えられたときに「G2」を取得したりするにはどうすればよいですか?

{
    "G1": [ "1" , "2" ],
    "G2": [ "3" , "4" ]
}

私は現在の仕事でJSFiddleを作成しました:http://jsfiddle.net/JmX6b/

4

3 に答える 3

3
var result;
for (var key in json) {
  if (json[key].indexOf(input) != -1) {
    result = key;
    break;
  }
}
于 2012-08-23T09:34:10.057 に答える
2

ここにフィドル..http ://jsfiddle.net/alokswain/9wVQh/

于 2012-08-23T09:40:51.713 に答える
0

を使用して、オブジェクト内のすべてのキーを反復処理できますfor ... in。そこから、各アイテムを繰り返すことができます。適切なエントリが見つかったら、現在のキーを取得するだけです。

$("button").click(function() {

    var input = $("input").val();

    for(key in json) {
       for(var i = 0, l < json[key].length; i < l; i++) {
          if(json[key][i] == input) {
             $('code').html(key);
             return;
          }
       }
    }

    $('code').html('Item not found');

);
于 2012-08-23T09:33:29.230 に答える