0

この JSON から値を取得する必要があります。これは jsp からの Java スクリプトです。

[{
        "selectionName": "Select",
        "subSelections": [{
                "id": 4,
                "subSelectionName": "Select",
                "description": "Deepmala"
            }
        ]
    }, {
        "selectionName": "week14",
        "subSelections": [{
                "id": 7,
                "subSelectionName": "1",
                "description": ""
            }
        ]
    }, {
        "selectionName": "test",
        "subSelections": [{
                "id": 6,
                "subSelectionName": "test",
                "description": ""
            }
        ]
    }, {
        "selectionName": "select",
        "subSelections": [{
                "id": 3,
                "subSelectionName": "sub-select",
                "description": "Created by Prakash"
            }
        ]
    }, {
        "selectionName": "testcreate",
        "subSelections": [{
                "id": 1,
                "subSelectionName": "testcreate",
                "description": ""
            }
        ]
    }, {
        "selectionName": "by htmlwidget",
        "subSelections": [{
                "id": 5,
                "subSelectionName": "by htmlwidget",
                "description": "created by html widget"
            }
        ]
    }
]

助言がありますか?私はこのようにそれを取得しようとしています:

function getSelection() {
  var options = "";  
  $.getJSON('../r3/selection.jsp').done(function(json) {    

  //alert(json.selectionName);
  // alert(json.subSelections);
  // options += '<option value="' + value. selectionId + '">' + value.selectionName +   '</option>';
    $.each(json.subSelections, function(index, value) {

     options += '<option value="' + value. subSelectionName + '">' + value. description + '</option>';
});

     var select = $('<select id="selection" onchange="getSubselection()"/>');   
    select.append(options);
    $(document.body).append(select); 

   }).fail(function (jqxhr, textStatus, error) {
   alert(' fail json  : '+error);
  }); 

}
//alert(json.selectionName);

// alert(json.subSelections); ループ内で未定義の値が得られます。

4

1 に答える 1