Как получить «неотображенный» первичный ключ от возврата JSON? - PullRequest
0 голосов
/ 10 января 2020

edit: Я сделал «целую страницу», чтобы иметь возможность протестировать и лучше объяснить вам, что я пытаюсь получить.

Я получаю это в json. json:

[
    {
        "2": [
            {
                "VALUE": "1",
                "NAME": "MAPLE"
            },
            {
                "VALUE": "2",
                "NAME": "OAK"
            },
            {
                "VALUE": "3",
                "NAME": "CHERRY"
            },
            {
                "VALUE": "9",
                "NAME": "ASH"
            },
            {
                "VALUE": "F",
                "NAME": "BIRCH"
            }
        ]
    },
    {
        "9": [
            {
                "VALUE": "1",
                "NAME": "3.25"
            },
            {
                "VALUE": "2",
                "NAME": "4.25"
            },
            {
                "VALUE": "5",
                "NAME": "7"
            }
        ]
    }
]

и получите это для вывода:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
    <title>Document</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
  </head>

  <body>
    <script>
      $(document).ready(function() {
        $.ajax({
          url: "json.json",
          type: "GET",
          dataType: "json",
          success: function(response) {
            console.log(response);
            $.each(response, function(key, value) {
              console.log(key + " :: " + value);
              //$('#segmentslist[segid="' + key + '"]').attr('disabled', false);
              $.each(value, function(subkey, subvalue) {
                console.log(subkey + " :: " + subvalue);
                //$('#segmentslist[segid="' + key + '"]').append('<option value=' + value[key]["VALUE"] + '>' + value[key]["NAME"] + '</option>');
              });
            });
          }
        });
      });
    </script>
  </body>
</html>

Я пытаюсь прочитать «2» и «9», так что я могу включить «выберите» соответствующий этому идентификатору, а затем добавьте к нему какое-либо значение параметра.

Я не уверен, как это сделать, поскольку я не знаю, как точно определить этот «идентификатор», ключ «только 0 и 1.

1 Ответ

0 голосов
/ 10 января 2020

удалось получить это ... Я не так далеко ... Мне просто нужно было сделать что-то еще и вернуться позже! :)

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
    <title>Document</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
  </head>

  <body>
    <script>
      $(document).ready(function() {
        $.ajax({
          url: "json.json",
          type: "GET",
          dataType: "json",
          success: function(response) {
            $.each(response, function(key, value) {
              $.each(value, function(key2, value2) {
                $('#segmentslist[segid="' + key2 + '"]').attr(
                  "disabled",
                  false
                );
                $('#segmentslist[segid="' + key2 + '"]').empty();
                $.each(value2, function(key3, value3) {
                  $('#segmentslist[segid="' + key2 + '"]').append(
                    "<option value=" +
                      value3["VALUE"] +
                      ">" +
                      value3["NAME"] +
                      "</option>"
                  );
                });
                $('#segmentslist[segid="' + key2 + '"]').trigger("change");
              });
            });
          }
        });
      });
    </script>
  </body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...