代码之家  ›  专栏  ›  技术社区  ›  Armstrongest

如何[简单地]在业务线web应用程序中使用json数据

  •  4
  • Armstrongest  · 技术社区  · 14 年前

    我通常使用json和jquery返回一个带有html的字符串。但是,我想开始在代码中使用javascript对象。

    在我的页面上使用json对象最简单的方法是什么?

    下面是一个ajax调用示例(在 $(document).ready( { ... }) 当然:

     $('#btn').click(function(event) {
         event.preventDefault();
         var out = $('#result');
         $.ajax({ url: "CustomerServices.asmx/GetCustomersByInvoiceCount",
              success: function(msg) {
                 // 
                 // Iterate through the json results and spit them out to a page?
                 // 
              },
                    data: "{ 'invoiceCount' : 100 }"
         });
     });
    

    我的网络方法:

    [WebMethod(Description="Gets customers with more than n invoices")]
    public List<Customer> GetCustomersByInvoiceCount(int? invoiceCount) {
        using (dbDataContext db = new dbDataContext()) {
    
            return db.Customers.Where(c => c.InvoiceCount >= invoiceCount);
        }
    }
    

    返回的内容:

    {"d":[{"__type":"Customer","Account":"1116317","Name":"SOME COMPANY","Address":"UNit 1             , 392 JOHN ST.                            ","LastTransaction":"\/Date(1268294400000)\/","HighestBalance":13922.34},{"__type":"Customer","Account":"1116318","Name":"ANOTHER COMPANY","Address":"UNIT #345             , 392 JOHN ST.                            ","LastTransaction":"\/Date(1265097600000)\/","HighestBalance":549.42}]}
    

    我想知道的是,人们通常如何处理这个返回的json?您是否遍历属性并动态创建html表?

    有没有办法使用反射的javascript版本(类似于.net gridview控件)来“绑定”json数据?

    您是否将返回的数据抛出到javascript对象中,然后对其进行处理?

    我想要实现的一个例子是有一个简单的ol'html页面(在移动设备上)和一个销售人员的客户列表。单击其中一个客户时,客户id将被发送到一个webservice,该webservice检索与销售人员相关的客户详细信息。

    我知道SO人才库很深,所以我想在座的各位都能够引导正确的方向,并给我一些关于最佳方法的想法。

    1 回复  |  直到 14 年前
        1
  •  3
  •   ntziolis    14 年前

    我建议您看看各种可用的客户机模板解决方案。甚至有人谈到将此与下一个jquery版本集成 here .

    我更喜欢 jTemplate 因为它简单小巧。但还有其他的。如果你想看到它的实际行动,请查看我们的一个客户网站 here . 我们发现它甚至可以扩展到很多行(1000行)。