如何在jstree中加载一些选中的项目。 (已选择=“已选择”无效)

在MVC 4中我使用jstree。 在创建操作中我没有问题。 但是在Edit操作中,我将true值设置为treemodel的某些项。 模型如下:

 public class RecursiveObject { public string data { get; set; } public Int64 id { get; set; } public FlatTreeAttribute attr { get; set; } public List children { get; set; } } public class FlatTreeAttribute { public string id; public bool selected; } 

当我填充树模型时,我设置selected = true; 对某些项目并在视图中使用它:

 json_data: { "ajax": { url: "@Url.Action("GetTreeData", "MyController")", type: "POST", dataType: "json", contentType: "application/json charset=utf-8" } }, 

但在视图中,所有项目都未经检查。 我看到一些

  • 标签已selected = "selected" ,但这不会影响它的检查。

    当我手动检查项目时, jstree-unchecked更改为jstree-checked类。 这意味着selected = "selected"不起作用。

    在此处输入图像描述

    我该如何解决这个问题?

    我找到了解决问题的方法。

     .bind("loaded.jstree", function (event, data) { $('li[selected=selected]').each(function () { $(this).removeClass('jstree-unchecked').addClass('jstree-checked'); }); });