`

json用法小案例

 
阅读更多

首先构建json 数据

StringBuilder sb = new StringBuilder();
            sb.Append("[");
            sb.Append("{");
            sb.AppendFormat("id:\"{0}\",", id);
            sb.AppendFormat("FLNodeName:\"{0}\",", tx_wzfl.Text);
            sb.AppendFormat("FLNodeid:\"{0}\",", hinWzflId.Value);
            sb.AppendFormat("MC:\"{0}\",", tx_mc.Text);
            sb.AppendFormat("PP:\"{0}\",", tx_pp.Text);
            sb.AppendFormat("GGXH:\"{0}\",", tx_ggxh.Text);
            sb.AppendFormat("DW:\"{0}\",", tx_dw.Text);
            sb.AppendFormat("XQSL:\"{0}\",", tx_xqsl.Text);
            sb.AppendFormat("YJDJ:\"{0}\",", tx_yjdj.Text);
            sb.AppendFormat("YJZJ:\"{0}\",", tx_yjzj.Text);
            sb.AppendFormat("XQYY:\"{0}\",", tx_xqyy.Text);
            sb.AppendFormat("GYS:\"{0}\",", tx_gys.Text);
            sb.AppendFormat("GYSid:\"{0}\"", hidgysid.Value == "" ? "0" : hidgysid.Value);
            sb.Append("}");
            sb.Append("]");
            ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(), "jsonData", "__doSelected('" + sb.ToString() + "');", true);

 

然后js回传信息

 //回传信息
        function __doSelected(info) {
            var win = window.opener;
            if (win != null && win != undefined) {
                if (win.__doSetInfo != null && win.__doSetInfo != undefined) {
                    win.__doSetInfo(info);
                }
            }
            window.close();
        }

doSetInfo函数是弹出框页面的js方法。

 

 

----

这是弹出框页面的js了

 function __doSetInfo(info) {
            if (info != null && info != '') {
                document.getElementById("hnwzvalue").value = info;
                document.getElementById("btnRefresh").click();
            }
        }

获取到json 数据后 放到一个隐藏域去,然后让一个隐藏按钮的点击事件触发

 

首先构造一个类,用来传递数据的

 public class returnJsion
        {
            public string ID { get; set; }
            public string FLNodeName { get; set; }
            public string FLNodeid { get; set; }
            public string MC { get; set; }
            public string PP { get; set; }
            public string GGXH { get; set; }
            public string DW { get; set; }
            public string XQSL { get; set; }
            public string YJDJ { get; set; }
            public string YJZJ { get; set; }
            public string XQYY { get; set; }
            public string GYS { get; set; }
            public string GYSid { get; set; }
        }

 

 

 protected void btnRefresh_Click(object sender, EventArgs e)
        {
            DataRow drtmp;
            string json = hnwzvalue.Value;
            if (json == "[object Object]")
            {
                return;
            }

            JavaScriptSerializer jsonSerializer = new JavaScriptSerializer();
            List<returnJsion> _returnJsion = jsonSerializer.Deserialize<List<returnJsion>>(json);
            if (dtList == null)
            {
                dtList = Init_Tab();
            }
            dtList.AcceptChanges();
            foreach (returnJsion rj in _returnJsion)
            {
                drtmp = dtList.NewRow();
                drtmp["ID"] = rj.ID;
                drtmp["FLNodeName"] = rj.FLNodeName;
                drtmp["FLNodeid"] = rj.FLNodeid;
                drtmp["MC"] = rj.MC;
                drtmp["PP"] = rj.PP;
                drtmp["GGXH"] = rj.GGXH;
                drtmp["DW"] = rj.DW;
                drtmp["XQSL"] = rj.XQSL;
                drtmp["YJDJ"] = rj.YJDJ == "" ? "0" : rj.YJDJ;
                drtmp["YJZJ"] = rj.YJZJ == "" ? "0" : rj.YJZJ;
                drtmp["XQYY"] = rj.XQYY;
                drtmp["GYS"] = rj.GYS;
                drtmp["GYSid"] = rj.GYSid;
                dtList.Rows.Add(drtmp);
                dtList.AcceptChanges();
            }

            this.dvList.DataSource = dtList;
            this.dvList.DataBind();
        }

 //重新定义列表项
        public DataTable Init_Tab()
        {
            DataTable dttmp = new DataTable();
            dttmp.Columns.Add("ID", typeof(string)); //ID
            dttmp.Columns.Add("FLNodeName", typeof(string));
            dttmp.Columns.Add("FLNodeid", typeof(string));
            dttmp.Columns.Add("MC", typeof(string));
            dttmp.Columns.Add("PP", typeof(string));
            dttmp.Columns.Add("GGXH", typeof(string));
            dttmp.Columns.Add("DW", typeof(string));
            dttmp.Columns.Add("XQSL", typeof(string));
            dttmp.Columns.Add("YJDJ", typeof(string));
            dttmp.Columns.Add("YJZJ", typeof(string));
            dttmp.Columns.Add("XQYY", typeof(string));
            dttmp.Columns.Add("GYS", typeof(string));
            dttmp.Columns.Add("GYSid", typeof(string));
            return dttmp;
        }

 

当你进到这个页面的时候 如果list有数据你要进行绑定

dtList = xtDAO.SqlText.ExecuteDataset(selectsql, parameters.ToArray()).Tables[0];

 

删除呢其实就删row的

  protected void btnDel_wz_Click(object sender, EventArgs e)
        {
            string strID = hnDeleteId.Value;
            if (strID.Trim().Length > 0)
            {
                DataRow[] dr = dtList.Select("id in (" + strID + ")");
                if (dr != null && dr.Length > 0)
                {
                    for (int i = 0; i < dr.Length; i++)
                    {
                        dtList.Rows.Remove(dr[i]);
                    }
                }
            }
            dtList.AcceptChanges();
            dvList.DataSource = dtList.DefaultView;
            dvList.DataBind();
        }

 

为了不用判断你这个list的数据哪些是新增的那些是更新的,就保存前delete所有,然后重新保存所有,这样就不用判断了!

 

 

 

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    json的使用小例子

    在这个“json的使用小例子”中,我们将探讨JSON在C++中的序列化和如何在Socket通信中应用。 序列化是将数据结构或对象转换为字节流的过程,以便存储或通过网络传输。在C++中,没有内置的JSON序列化库,但有许多第三...

    json的方式传输数据的小案例

    7. **前端交互**:在前端,通常使用JavaScript的`fetch` API或者jQuery的`$.ajax`方法发送JSON数据到服务器,并通过回调函数接收并处理服务器返回的JSON数据。例如,使用`fetch`: ```javascript fetch('/servlet-...

    jsonjar包和案例

    案例中可能会展示如何使用这些方法进行实际的数据操作,比如从服务器接收JSON数据,解析成JSONObject,然后提取所需的信息,或者相反地,将Java对象转换成JSON,发送给服务器。在处理复杂结构,如嵌套的JSONObject或...

    基于JSON的AJAX请求案例

    然后,我们定义了要发送的数据并将其转化为JSON字符串,最后通过`send()`方法发送。 对于本地服务器,我们可以使用Node.js搭建。例如,使用Express框架创建一个简单的服务器来处理GET和POST请求: ```javascript ...

    jquery json 调用后台 案例

    在本文中,我们将深入探讨如何使用jQuery和JSON技术与ASP.NET后台进行交互,结合实际案例进行解析。jQuery是一个轻量级、高性能的JavaScript库,它极大地简化了DOM操作、事件处理、动画效果以及Ajax交互。而JSON...

    json解析个人案例

    综上所述,“json解析个人案例”涵盖了从理解JSON的基本结构,到在不同编程语言中的解析方法,以及JSON在实际应用场景中的安全性和效率问题等多个方面。通过学习和实践这样的案例,我们可以深化对JSON这一重要数据...

    gson和jsonBean解析json案例

    本篇文章将详细探讨这两个库的使用方法,并通过一个具体的案例来展示它们在解析JSON时的工作流程。 首先,我们来了解一下Gson。Gson是Google提供的一个开源库,它能够轻松地在Java对象和JSON数据之间进行映射。Gson...

    java解析json完整案例

    本案例主要涉及`org.json`库,它是一个小巧且功能强大的JSON库,适用于Java平台。 首先,我们需要在项目中引入`org.json`库。如果你的项目是Maven工程,可以在`pom.xml`文件中添加如下依赖: ```xml &lt;groupId&gt;...

    PB解析json,解析JSON案例,解析jsondemo

    标题中的“PB解析json,解析JSON案例,解析jsondemo”表明了本文主要关注的是PowerBuilder(简称PB)如何处理JSON数据。在现代软件开发中,JSON(JavaScript Object Notation)是一种广泛使用的轻量级数据交换格式,...

    Json解析详细案例

    另外,可以使用JSON Schema来验证JSON数据是否符合预期的结构。 总结,JSON解析是开发中不可或缺的部分,掌握各种编程语言下的解析方法能帮助我们更高效地处理数据交互。通过上述案例,相信你已经对JSON解析有了更...

    JSONF示例,JSON入门案例,JSON

    当`index.html`中的AJAX请求接收到这个响应时,JavaScript可以使用`JSON.parse()`方法将接收到的JSON字符串转化为JavaScript对象,以便进一步处理和展示。 在JavaScript中,处理接收到的JSON数据可能如下所示: ``...

    C#Json文件操作案例

    在C#中,可以使用`System.IO.File.ReadAllText()`方法读取JSON文件的全部内容,然后用`JsonSerializer.Deserialize()`将JSON字符串转换为特定的C#对象。例如,如果你有一个名为`Student`的类,你可以这样做: ```...

    json解析和封装案例

    在这个“json解析和封装案例”中,我们将深入探讨JSON的基本概念、解析和封装方法,并通过实际的JsonDemo来加深理解。 一、JSON基本概念 1. JSON格式:JSON采用键值对(key-value pairs)的形式,键和值之间用冒号...

    VB解析JSON案例

    本案例“VB解析JSON”就是针对这一需求,提供了一种在VB环境中解析JSON数据的方法。 首先,我们需要引入一个VB.NET库,如Newtonsoft.Json,它提供了丰富的功能来序列化和反序列化JSON。在Visual Studio中,可以通过...

    复杂的json字符串解析(真实案例)

    在这个真实案例中,我们将深入探讨如何使用Gson库来解析复杂的JSON字符串。 Gson是Google提供的一个Java库,它能够将Java对象转换为JSON字符串,反之亦然。在解析复杂的JSON字符串时,Gson提供了强大的功能,包括对...

    json使用的小包包

    总结,"json使用的小包包"可能是关于如何在Spring MVC项目中有效利用JSON进行数据交换的实践案例或工具集合,涵盖了JSON的基本概念、Spring MVC中的JSON处理、数据验证以及与Ajax的结合使用等内容。通过学习和应用...

    JSON对象互转案例fastjson

    例如,如果你有一个Java对象,你可以使用`stringify()`方法将其转换成JSON格式的字符串,以便于在网络间传输或者存储。这个过程也被称为序列化。例如: ```java Person person = new Person("John", 30); String ...

    android demo,json数据格式的案例的应用

    在本示例中,如果你的项目使用了Gson,你可以创建一个Java对象,该对象的字段与JSON对象的键对应,然后使用Gson的`toJson()`方法将对象转换为JSON字符串,或者用`fromJson()`方法将JSON字符串解析回Java对象。...

    Gson简单与复杂json数据解析案例

    在"简单与复杂json数据解析案例"中,我们将探讨如何使用Gson处理各种JSON结构。 1. **Gson基本使用** - **序列化**: 将Java对象转换为JSON字符串。例如,有一个名为`Person`的类,包含`name`和`age`字段,我们可以...

    C# json格式解析,Json格式字符串与C#对象相互转换,类库+使用案例,注释详细

    写了一个json与C#对象相互装换的类库,直接调用就行,有测试案例,代码注释非常详细 部分方法: /// 将Json字符串解析为C#中的对象 /// Json格式中的字符串值识别 /// 将Json字符串解析为Dictionary, dynamic&gt;对象...

Global site tag (gtag.js) - Google Analytics