javascript - 在 foreach 循环的 JavaScript 代码中,在 ASPX 后面的代码中调用列表?

标签 javascript c# asp.net .net visual-studio-2012

我有以下 aspx.cs:

public partial class BarChart 
{
    public class LabelsDetail
    {
        public string LabelId { get;set; }
        public string LabelDesc { get; set; }
    }
    public List<LabelsDetail> LabelsDetails { get; set; }

    public void InsertDataToLabelsDetails()
    {
        // Data comes from somewhere into "LabelsDetails"

    }

}

以及ASPX页面中的以下JS代码:

        function setupBarChart(JQObjectContainer, JsonData) {
            var hashTableSize = <%=this.LabelsDetails.Count%>;
            var hashtable = {};

            if (hashTableSize != 'undefined' && hashTableSize > 0)
            {
                for (var item in <%=this.LabelsDetails%>)
                { 
                    hashtable[item.LabelId] = item.LabelDesc;
                }
            }

}

如何在客户端的服务器端列表上执行 foreach ?

目前我得到Uncaught SyntaxError: Untermerated templateliteral 当我尝试在服务器端列表上循环时 (this.LabelsDetails) 。

谢谢

最佳答案

试试这个

function setupBarChart(JQObjectContainer, JsonData) {
            var hashTableSize = <%=this.LabelsDetails.Count%>;
            var hashtable = {};
            var json = <%=new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(this.LabelsDetails)%>;
            if (hashTableSize != 'undefined' && hashTableSize > 0)
            {
                for (var key in json)
                { 
                    hashtable[json[key].LabelId] = json[key].LabelDesc;
                }

            }
}

关于javascript - 在 foreach 循环的 JavaScript 代码中,在 ASPX 后面的代码中调用列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30054768/

相关文章:

javascript - 验证动态输入字段 Jquery

javascript - 从 AJAX 请求结果更新 Bootstrap 警报文本

javascript - 从 Observable 列表创建 Observable 对象

c# - 使用 C# 确定谁打开了文件

C# Linq List 比较和更新列表

asp.net - 跨浏览器脚本代理

javascript - 使用 JS 对 HTML 表单进行文件类型验证后,如果无效,控件应保留在同一页面上

c# - 为什么它总是抛出 ObjectDisposedException?

ASP.NET Core 通配符路由除外

asp.net - 这是一种保持 ASP.NET 应用程序存活且不被回收的安全方法吗?