为了账号安全,请及时绑定邮箱和手机立即绑定

将C#ASP.NET数组传递给Javascript数组

将C#ASP.NET数组传递给Javascript数组

慕容森 2019-11-29 09:45:31
有谁知道如何将C#ASP.NET数组传递给JavaScript数组?示例代码也将很好。抱歉,如果我以前的人含糊不清。这个问题实际上很简单。为了简单起见,我在aspx.cs文件中声明:int [] numbers = new int[5];现在,我想传递numbers给客户端,并在JavaScript中使用数组中的数据。我该怎么做?
查看完整描述

3 回答

?
三国纷争

TA贡献1804条经验 获得超7个赞

用System.Web.Script.Serialization.JavaScriptSerializer类序列化它并分配给javascript var


虚拟样本:


<% var serializer = new System.Web.Script.Serialization.JavaScriptSerializer(); %>

var jsVariable = <%= serializer.Serialize(array) %>;


查看完整回答
反对 回复 2019-11-29
?
jeck猫

TA贡献1909条经验 获得超7个赞

这是补充zerkms的答案。


若要跨语言障碍传递数据,您将需要一种通过序列化数据将数据表示为字符串的方法。JavaScript的序列化方法之一是JSON。在zerkms的示例中,代码将放置在aspx页面内。要将他的示例和您的示例合并到一个aspx页面上,您将拥有


<%

    int[] numbers = new int[5];

    // Fill up numbers...


    var serializer = new System.Web.Script.Serialization.JavaScriptSerializer();

%>

稍后在aspx页面上的某个地方


<script type="text/javascript">

    var jsVariable = <%= serializer.Serialize(numbers) %>;

</script>

但是,此答案假设您是从初始页面加载中生成JavaScript的。根据您帖子中的评论,这可以通过AJAX完成。在这种情况下,您将让服务器响应序列化的结果,然后使用您喜欢的框架在JavaScript中反序列化它。


注意:也不要将其标记为答案,因为我希望突出显示语法以使另一个答案更清晰。


查看完整回答
反对 回复 2019-11-29
  • 3 回答
  • 0 关注
  • 788 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信