Как разобрать jsonarray, хранящийся в viewBag, используя jquery - PullRequest
0 голосов
/ 16 ноября 2018

Я не могу проанализировать jsonArray в viewBag. Я хочу получить содержимое, а затем использовать его, чтобы добавить параметры в

После использования console.log я увидел, что мой json выглядит следующим образом:

Пока у меня есть массив с одним элементом

[  
   {  
      "BackgroundColor":null,
      "BaseFormat":"PNG",
      "ColorFormat":"RGB",
      "ColorProfile":null,
      "Density":"300",
      "Extra_param":null,
      "FileFormat":"JPG",
      "PresetId":"2",
      "Resolution":"",
      "Quality":100
   }
]

У меня есть содержимое в переменной, как показано ниже:

var presetArray = @ Html.Raw (Json.Encode (@ ViewBag.user_doc_presets)); console.log (presetArray);

Я хочу, чтобы базовый формат и цветовой формат использовались для выбора.

Я попробовал несколько стековых потоков сообщений , но они мне не помогли.

Если у вас есть ссылка на старый пост или подсказку, пожалуйста, поделитесь. @ downvoters, пожалуйста, дайте мне знать, если у вас есть какие-либо вопросы относительно этого поста, а не скрытое голосование.

Ответы [ 2 ]

0 голосов
/ 20 ноября 2018

Мне не хватало Json.Parse, который решил проблему

Пожалуйста, обратитесь к http://jsfiddle.net/jresdqw3/

var arr = [  
   {  
      "BackgroundColor":null,
      "BaseFormat":"PNG",
      "ColorFormat":"RGB",
      "ColorProfile":null,
      "Density":"300",
      "Extra_param":null,
      "FileFormat":"JPG",
      "PresetId":"2",
      "Resolution":"",
      "Quality":100
   }
];

alert(arr.length);
alert(JSON.stringify(arr).length);
0 голосов
/ 16 ноября 2018

Поскольку он имеет тип массива, вы можете получить к нему доступ с помощью Index, и здесь он равен 0, поскольку элемент массива только один.

presetArray[0].BaseFormat
presetArray[0].ColorFormat

var presetArray  = [{"BackgroundColor":null,"BaseFormat":"PNG","ColorFormat":"RGB","ColorProfile":null,"Density":"300","Extra_param":null,"FileFormat":"JPG","PresetId":"2","Resolution":"","Quality":100}]



console.log("Base Format: " + presetArray[0].BaseFormat);
console.log("Color Format: " + presetArray[0].ColorFormat);
...