如何动态加载 selectize.js 电子邮件联系人选项

How to load selectize.js email contacts options dynamically

我正在使用 selectize.js 之类的电子邮件联系人。但是当我从数据库中获取邮件列表时,选择显示未定义。当我手动输入 return 值时,一切都很好。我该如何填充它?这是我的代码示例。

Return 值:

"[{"name":"Test User 1","id":"1"},{"name":"Test User 2","id":"2"}]"

C#

public JsonResult GetMails(){
    var list = db.Members
        .Where(x => x.IsActive == Status.Active)
        .OrderBy(x => x.FullName)
        .Select(c => new
        {
        name = c.FullName,
                id = c.Id.ToString()
        });
        return Json(list, JsonRequestBehavior.AllowGet);
}

Javascript

<script type="text/javascript">
$(function () {
    $.get("/mail/getmails", function (data) {
        $("#MailReceivers").selectize({
            persist: false,
            plugins: ['remove_button'],
            maxItems: null,
            valueField: 'id',
            labelField: 'name',
            searchField: ['name', 'id'],
            options: JSON.stringify(data),
            create: function (input) {
                return {name: input};
            }
        });
    });
});
</script>

答案是先解析json再解析stringfy.

options: JSON.parse(JSON.stringify(data))