繁体   English   中英

在JavaScript中访问ASP.NET Core ViewData

[英]ASP.NET Core ViewData access in javascript

我通过ViewData从控制器向html页面发送文件路径(字符串),我想在我的javascript中访问该字符串,使用它,在javascript中运行一些算法,然后使用结果来使用它们并在同一个html页面上制作一些图形。

HTML

</head>
<body>
    <div id="mychart"></div>
    <script>
        var path=@ViewData["path"];
        //some javascript logic with the string path of the file.
        //using results for output chart of id 'mychart'
    </script>
</body>
</html>

控制器动作代码:

        public IActionResult CellResult(string outputpath)
        {
            ViewData["path"] = outputPath;
            return View();
        }

由于它是一个字符串值,您需要将其包装在单引号或双引号中。

var path='@ViewData["path"]';
alert(path);

编辑:根据评论

如何从控制器向html页面发送字符串列表并在javascript中使用它? 而不是字符串我想发送一个字符串列表

如果要发送字符串列表,它是相同的,但由于它现在是复杂类型,您需要使用json序列化程序将此对象转换为字符串。

所以在你的服务器上

var list = new List<string> {"Hi", "Hello"};
ViewBag.MyList = list;

并在视图中

<script>
    var list = @Html.Raw(JsonConvert.SerializeObject(ViewBag.MyList));
    console.log(list);
</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM