javascript - 将 viewbag 转换为 javascript 数组

标签 javascript asp.net-mvc arrays viewbag

我想从 ViewBag.mytags 获取数据到一个 Javascript 数组,但是我无法实现这一点

$(function () {
    var sampleTags = new Array();
    var array = @Html.Raw(Json.Encode(@ViewBag.mytags));
    for(var i =0; i<array.length;i++){
        sampleTags[i] = array[i];
    }  
    $('#singleFieldTags').tagit({
        availableTags: sampleTags,
        singleField: true,
        singleFieldNode: $('#mySingleField')
    });
}

这是我的 Controller

ViewBag.mytags = mp3.TagSuggestion();

这是我的模型

public IQueryable<string> TagSuggestion() 
{ 

    IQueryable<string> tabs = from s in db.tblTags select s.Title; 

    return tabs; 

} 

最佳答案

请按照以下步骤

public IList<string> TagSuggestion() 
{ 
    IQueryable<string> tabs = from s in db.tblTags select s.Title; 
    return tabs.toList(); 
}

内部 MVC Controller :

ViewBag.mytags = mp3.TagSuggestion().toList();

在 View 中:

<script>
    $(function () {
        var sampleTags = new Array();
        var array = @Html.Raw(Json.Encode(@ViewBag.mytags));
        for(var i =0; i<array.length;i++){
            sampleTags[i] = array[i];
        }  

        $('#singleFieldTags').tagit({
            availableTags: sampleTags,
            singleField: true,
            singleFieldNode: $('#mySingleField')
        });
    });
</script>

关于javascript - 将 viewbag 转换为 javascript 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12454371/

相关文章:

c# - 不可访问的内部资源文件?

c++ - 使用二维数组制作 6x6 网格

javascript - 滚动到包装器内的 Div,而不是正文

asp.net-mvc - 在 ASP.NET MVC RC1 中对强类型 View 使用“添加 View ”对话框时出现问题

javascript - 按字母顺序对下拉列表的条目进行排序

asp.net-mvc - 如何刷新mvc webgrid

python - Numpy:给定递增所需的索引,递增数组的元素

javascript - uInt8Array 响应 - 文件下载 - Javascript

javascript - AngularJS 数据不会通过 ng-route 加载

javascript - 加速 HTML5 Canvas 像素渲染