【问题标题】:return json from pageload in asp.net + populate other data从asp.net中的页面加载返回json +填充其他数据
【发布时间】:2015-05-28 20:14:36
【问题描述】:

我有一个 aspx 页面 - 在页面加载时,我需要用信息填充字段(常规方式 - txt1.Text ="abc" 等)。 但是,我还需要返回一个 json 对象才能在 $(document).ready(...) 上使用它

我可以在 page_load 上返回这两种类型的信息吗?以及如何?

  • 页面加载后我无法使用 ajax - 我需要使用 page_load 加载所有信息

谢谢。

【问题讨论】:

  • 是的,您可以,[stackoverflow][1] [1] 上已经对此进行了很好的讨论:stackoverflow.com/questions/8072745/…
  • @Yuri 很好地抓住了这个线程比我介绍的更深入地拥有你需要的一切。

标签: asp.net json


【解决方案1】:

您可以在 dom 上进行 ajax 调用,准备好向服务器获取您的 json 数据。 http://api.jquery.com/jquery.ajax/ 您需要一个服务来从您的 ajax 请求中提取您的 json 数据以将其呈现在页面上。 asp.net 中有一些选项,包括 .ashx 处理程序、Web 方法https://msdn.microsoft.com/en-us/library/byxd99hx%28v=vs.90%29.aspx 等。

【讨论】:

    【解决方案2】:

    将您的 JSON 字符串存储在 HiddenField 中,然后在 ready 处理程序中读取并解析它。

    C#:

    JsonField.Value = myJsonString;
    

    JavaScript:

    $(function(){
        var json = $("#<%=JsonField.ClientID%>").val();
        var obj = JSON.parse(json);
    });
    

    【讨论】:

    • 我刚刚测试了一个 200MB 的字符串,没有遇到任何问题。我不相信有限制。您的 JSON 字符串是否超过 200MB?
    猜你喜欢
    • 2017-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-26
    • 2021-12-25
    • 1970-01-01
    相关资源
    最近更新 更多