ASP.NET 写Json、Json转List

来源:互联网 发布:最全p2p在线网络投资 编辑:程序博客网 时间:2024/06/05 12:03

遍历tr,写入Json

//遍历BOM配件,转换成Json,并写入隐藏域hidBomJsonfunction SyncBomChild() {    try {        //获取所有BOM配件tr行        var $child = $(".tbBomItem tbody:first").children("tr:gt(1):not(:last-child)");        if ($child.length > 0) {                    //创建Json对象            var $array = [];            //遍历tr,获取BOM清单            $child.each(function(i) {                var scpid = $(this).attr("bom-scpid");                var pcpid = $(this).attr("bom-pcpid");                var orderid = $(this).attr("bom-orderid");                var levelid = $(this).attr("bom-level");                var amount = $(this).attr("bom-nums");                var price = $(this).attr("bom-price");                //创建BOM产品并写入Array                var $item = { "SCPID": scpid, "PCPID": pcpid, "Orderid": orderid, "Levelid": levelid, "Amount": amount, "Price": price };                                //写入Json对象                $array.push($item);            });            //BOM产品Array转换成Json并写入隐藏域            $("input[id*=hidBomJson]").val(JSON.stringify($array));        }        //正确状态,继续执行后面的代码        return true;    } catch (e) {        alert("参数错误!" + e.message);        //出现错误,禁止执行后面的代码        return false;    }}

ASP.NET读json并转换成List

List<MD.CartListInfo> list = JsonConvert.DeserializeObject<List<MD.CartListInfo>>(this.hidBomJson.Value);foreach (MD.CartListInfo item in list){    MD.CartListInfo cartlist = new MD.CartListInfo();    cartlist.SCPID = item.SCPID;    cartlist.PCPID = item.PCPID;    cartlist.Orderid = item.Orderid;    cartlist.Levelid = item.Levelid;    cartlist.Amount = item.Amount;    cartlist.Price = item.Price;    cartlist.ItemID = cartitem.ItemID;    cartlistBL.Insert(cartlist);}

HTML

<asp:HiddenField ID="hidBomJson" runat="server" /><table class="tbBomItem table w100 mag_b20" cellspacing="0" cellpadding="0" align="center"><tbody>    <tr>        <td class="th" colspan="11" align="center">            2.5T蓄电池式电机车        </td>    </tr>    <tr align="center">        <td class="th" style="width: 5%" nowrap="">            序号        </td>        <td class="th" style="width: 5%" nowrap="">            更换配件        </td>        <td class="th" style="width: 10%" nowrap="">            BOM类型        </td>        <td class="th" nowrap="">            层级        </td>        <td class="th" style="width: 5%" nowrap="">            排序        </td>        <td class="th" nowrap="">            产品名称        </td>        <td class="th" style="width: 10%" nowrap="">            规格型号        </td>        <td class="th" style="width: 10%" nowrap="">            计量单位        </td>        <td class="th" style="width: 10%" nowrap="">            组装数量        </td>        <td class="th" style="width: 10%" nowrap="">            产品售价        </td>        <td class="th" style="width: 10%" nowrap="">            合计        </td>    </tr>        <tr bom-level="1" bom-pcpid="78618" bom-scpid="78621" bom-orderid="1" bom-nums="1" bom-price="299.00">        <td class="td" nowrap="" align="center">            1        </td>        <td class="td bom-content" style="position: relative; color: #999;" nowrap="" align="center">            <a href="javascript:;" id="btnchange">更换</a>        </td>        <td class="td" nowrap="" align="center">            零部件        </td>        <td class="td" nowrap="" align="center">            1        </td>        <td class="td" nowrap="" align="center">            1        </td>        <td class="td" nowrap="">            BCB3-130矿用隔爆型插销连接器        </td>        <td class="td" nowrap="" align="center">            SPEC        </td>        <td class="td" nowrap="" align="center">            件        </td>        <td class="td" nowrap="" align="center">            1        </td>        <td class="td" nowrap="" align="center">            ¥299        </td>        <td class="td" nowrap="" align="center">            ¥299        </td>    </tr>    <tr bom-level="2" bom-pcpid="78621" bom-scpid="78622" bom-orderid="1" bom-nums="1" bom-price="199.00">        <td class="td" nowrap="" align="center">            2        </td>        <td class="td bom-content" style="position: relative; color: #999;" nowrap="" align="center">            <a href="javascript:;" id="btnchange">更换</a>        </td>        <td class="td" nowrap="" align="center">            零部件        </td>        <td class="td" nowrap="" align="center">            2        </td>        <td class="td" nowrap="" align="center">            1        </td>        <td class="td" nowrap="">            DXK直变器        </td>        <td class="td" nowrap="" align="center">            SPEC        </td>        <td class="td" nowrap="" align="center">            件        </td>        <td class="td" nowrap="" align="center">            1        </td>        <td class="td" nowrap="" align="center">            ¥199        </td>        <td class="td" nowrap="" align="center">            ¥199        </td>    </tr>    <tr bom-level="2" bom-pcpid="78621" bom-scpid="78623" bom-orderid="2" bom-nums="1" bom-price="100.00">        <td class="td" nowrap="" align="center">            3        </td>        <td class="td bom-content" style="position: relative; color: #999;" nowrap="" align="center">            <a href="javascript:;" id="btnchange">更换</a>        </td>        <td class="td" nowrap="" align="center">            零部件        </td>        <td class="td" nowrap="" align="center">            2        </td>        <td class="td" nowrap="" align="center">            2        </td>        <td class="td" nowrap="">            DXK控制电源        </td>        <td class="td" nowrap="" align="center">            SPEC        </td>        <td class="td" nowrap="" align="center">            件        </td>        <td class="td" nowrap="" align="center">            1        </td>        <td class="td" nowrap="" align="center">            ¥100        </td>        <td class="td" nowrap="" align="center">            ¥100        </td>    </tr>            <tr>        <td class="td" colspan="2" align="center">            <a href="javascript:;" id="btnreset">重置组合</a>        </td>        <td class="td" colspan="8" align="left">                     </td>        <td class="td" align="center">            <label id="lblTotalPrice">                ¥299.00</label>        </td>    </tr></tbody></table>