gpt4 book ai didi

javascript - 如何使用 Mustache 循环遍历 json 字符串集合?

转载 作者:行者123 更新时间:2023-11-28 02:15:36 26 4
gpt4 key购买 nike

创建字符串数组的 MVC 是

  public JsonResult GetInvalidFilesAJAX(JQueryDataTableParamModel param)
{
string[] invalidFiles = new string[] { "one.xls", "two.xls", "three.xls" };

return Json(new
{
Status = "OK",
InvalidFiles = invalidFiles
});
}

应该循环并打印出每个字符串的 JavaScript 是

  $.ajax(
{
type: 'POST',
url: 'http://localhost:7000/ManualProcess/GetInvalidFilesAJAX',
success: function (response) {
if (response.Status == 'OK') {
//Use template to populate dialog with text of Tasks to validate
var results = {
invalidFiles: response.InvalidFiles,
};
var template = "<b>Invalid Files:</b> {{#invalidFiles}} Filename: {{invalidFiles.value}} <br />{{/invalidFiles}}";
var html = Mustache.to_html(template, results);

$('#divDialogModalErrors').html('ERROR: The following files have been deleted:');
$('#divDialogModalErrorFiles').html(html);

如何引用数组中的字符串?上面的方法并不正确。我找到的所有示例似乎都是针对 Jason 集合具有属性名称的情况。在我的例子中,它只是一个键值对(我猜?)

最佳答案

没有内置方法。您必须自己将 JSON 转换为数组或循环数据,例如

var data = JSON.parse(jsonString); // Assuming JSON.parse is available
var arr = [];
for (var i = 0, value; (value = data[i]); ++i) {
arr.push(value);
}

或者:

var arr = [];
for (var prop in data){
if (data.hasOwnProperty(prop)){
arr.push({
'key' : prop,
'value' : data[prop]
});
}
}

然后显示它:

var template = "{{#arr}}<p>{{value}}</p>{{/arr}}";
var html = Mustache.to_html(template, {arr: arr});

这假设您的 JSON 对象是一层深。

关于javascript - 如何使用 Mustache 循环遍历 json 字符串集合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16447783/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com