데이터가 하나 있을 때 데이터를 지우고 다시 로드하면 지운 데이터가 사라지지 않는 현상이 있다.

두개 이상일 때는 정상인데 하나 일 때만 이런 형상이 있어 하기와 같이 초기화를 시켜주면 된다.

 

function fnGetProductAccessoryOrderRemark() {
            var ProductAccessoryOrderM_Idx = "<%=EncryptKey(this.GetKeyId())%>";  // 제품장비/악세사리 주문 마스터 테이블 일련번호

            var items = [
                {
                    PRODUCTACCESSORYORDERM_IDX: ProductAccessoryOrderM_Idx
                }
            ];

            var options = {
                type: "POST",
                url: "<%= HttpContext.Current.Request.Url.AbsolutePath %>/GetProductAccessoryOrderRemarkList",
                data: "{'items':" + JSON.stringify(items) + "}",
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                async: false,
                success: function (response) {
                    if (response.d != "") {
                        var parsed = JSON.parse(response.d);

                        if (parsed != null) {
                            fntProductAccessoryOrderRemark(parsed);
                        }
                    }
                    else {
                        fntProductAccessoryOrderRemark("");
                    }
                },
                error: function (msg) { fntProductAccessoryOrderRemark(""); alert(msg.d); },
            };
            jQuery.ajax(options);
        }

        function fntProductAccessoryOrderRemark(parsed) {
            var rHelperCar;
            rHelperCar = void 0;

 

            // dataTable 초기화
            var table = $('#tableProductAccessoryOrderRemark').DataTable();
            table.clear().draw();

 

            $('#tableProductAccessoryOrderRemark').DataTable({
                "bDestroy": true,
                "bPaginate": false,
                "bFilter": false,
                "bInfo": false,
                "order": [],
                data: parsed,
                columns: [
                            { data: 'ProductAccessoryOrderRemark_Idx' },
                            { data: 'Remark' },
                            { data: 'UserNm' },
                            { data: 'RegDate' }
                ],
                "columnDefs": [
                            {
                                "targets": [ 0 ],
                                "visible": false
                            }
                ],
                preDrawCallback: function () {
                    if (!rHelperCar) {
                        rHelperCar = new ResponsiveDatatablesHelper($('#tableProductAccessoryOrderRemark'), breakpointDefinition);
                    }
                },
                rowCallback: function (nRow, aData) {
                    rHelperCar.createExpandIcon(nRow);

                    // Row 클릭 이벤트
                    $(nRow).on('click', function() {
                        fnProductAccessoryOrderRemarkCreate(aData['ProductAccessoryOrderRemark_Idx']);
                    });
                },
                drawCallback: function (oSettings) {
                    rHelperCar.respond();
                }
            });

            // 비고 그리드 cursor
            $("#tableProductAccessoryOrderRemark tr").css('cursor', 'pointer');
        }

 

 

 

.cs

using System.Web.Script.Serialization;

[System.Web.Services.WebMethod]
        public static string GetProductAccessoryOrderRemarkList(object items)
        {
            if (HttpContext.Current.Session["UserId"] == null) return "";

            string result = string.Empty;

            // 리스트 형식
            List<object> lstItems = new JavaScriptSerializer().ConvertToType<List<object>>(items);

            for (int i = 0; i < lstItems.Count; i++)
            {
                Biz.FW.FWXmlAutoBiz oBiz = null;
                Hashtable ht = new Hashtable();
                DataSet dsData = null;

                foreach (KeyValuePair<string, object> kvp in (IEnumerable)lstItems[i])
                {
                    if (kvp.Key == "PRODUCTACCESSORYORDERM_IDX")
                        ht.Add(kvp.Key, DecryptKey(kvp.Value, true));
                    else
                        ht.Add(kvp.Key, kvp.Value.ToString());
                }
               
                oBiz = new Biz.FW.FWXmlAutoBiz();
                dsData = oBiz.XmlGetData("uspProductAccessoryOrderRemarkList", ht);

                if (dsData != null && dsData.Tables.Count > 0 && dsData.Tables[0].Rows.Count > 0)
                {
                    var list = new List<Dictionary<string, object>>();

                    foreach (DataRow row in dsData.Tables[0].Rows)
                    {
                        var dict = new Dictionary<string, object>();

                        foreach (DataColumn col in dsData.Tables[0].Columns)
                        {
                            if (col.ColumnName == "ProductAccessoryOrderRemark_Idx")
                                dict[col.ColumnName] = EncryptKey(row[col]).ToString();
                            else if (col.ColumnName == "Remark")
                                dict[col.ColumnName] = Convert.ToString(row[col]).Replace("\n", "<br />");
                            else
                                dict[col.ColumnName] = (Convert.ToString(row[col]));
                        }

                        list.Add(dict);
                    }

                    JavaScriptSerializer serializer = new JavaScriptSerializer();
                    result = serializer.Serialize(list);
                }
            }

            return result;
        }

 

 

PM_AO_View.aspx

PM_AO_View.aspx.cs

+ Recent posts

 

데이터가 하나 있을 때 데이터를 지우고 다시 로드하면 지운 데이터가 사라지지 않는 현상이 있다.

두개 이상일 때는 정상인데 하나 일 때만 이런 형상이 있어 하기와 같이 초기화를 시켜주면 된다.

 

function fnGetProductAccessoryOrderRemark() {
            var ProductAccessoryOrderM_Idx = "<%=EncryptKey(this.GetKeyId())%>";  // 제품장비/악세사리 주문 마스터 테이블 일련번호

            var items = [
                {
                    PRODUCTACCESSORYORDERM_IDX: ProductAccessoryOrderM_Idx
                }
            ];

            var options = {
                type: "POST",
                url: "<%= HttpContext.Current.Request.Url.AbsolutePath %>/GetProductAccessoryOrderRemarkList",
                data: "{'items':" + JSON.stringify(items) + "}",
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                async: false,
                success: function (response) {
                    if (response.d != "") {
                        var parsed = JSON.parse(response.d);

                        if (parsed != null) {
                            fntProductAccessoryOrderRemark(parsed);
                        }
                    }
                    else {
                        fntProductAccessoryOrderRemark("");
                    }
                },
                error: function (msg) { fntProductAccessoryOrderRemark(""); alert(msg.d); },
            };
            jQuery.ajax(options);
        }

        function fntProductAccessoryOrderRemark(parsed) {
            var rHelperCar;
            rHelperCar = void 0;

 

            // dataTable 초기화
            var table = $('#tableProductAccessoryOrderRemark').DataTable();
            table.clear().draw();

 

            $('#tableProductAccessoryOrderRemark').DataTable({
                "bDestroy": true,
                "bPaginate": false,
                "bFilter": false,
                "bInfo": false,
                "order": [],
                data: parsed,
                columns: [
                            { data: 'ProductAccessoryOrderRemark_Idx' },
                            { data: 'Remark' },
                            { data: 'UserNm' },
                            { data: 'RegDate' }
                ],
                "columnDefs": [
                            {
                                "targets": [ 0 ],
                                "visible": false
                            }
                ],
                preDrawCallback: function () {
                    if (!rHelperCar) {
                        rHelperCar = new ResponsiveDatatablesHelper($('#tableProductAccessoryOrderRemark'), breakpointDefinition);
                    }
                },
                rowCallback: function (nRow, aData) {
                    rHelperCar.createExpandIcon(nRow);

                    // Row 클릭 이벤트
                    $(nRow).on('click', function() {
                        fnProductAccessoryOrderRemarkCreate(aData['ProductAccessoryOrderRemark_Idx']);
                    });
                },
                drawCallback: function (oSettings) {
                    rHelperCar.respond();
                }
            });

            // 비고 그리드 cursor
            $("#tableProductAccessoryOrderRemark tr").css('cursor', 'pointer');
        }

 

 

 

.cs

using System.Web.Script.Serialization;

[System.Web.Services.WebMethod]
        public static string GetProductAccessoryOrderRemarkList(object items)
        {
            if (HttpContext.Current.Session["UserId"] == null) return "";

            string result = string.Empty;

            // 리스트 형식
            List<object> lstItems = new JavaScriptSerializer().ConvertToType<List<object>>(items);

            for (int i = 0; i < lstItems.Count; i++)
            {
                Biz.FW.FWXmlAutoBiz oBiz = null;
                Hashtable ht = new Hashtable();
                DataSet dsData = null;

                foreach (KeyValuePair<string, object> kvp in (IEnumerable)lstItems[i])
                {
                    if (kvp.Key == "PRODUCTACCESSORYORDERM_IDX")
                        ht.Add(kvp.Key, DecryptKey(kvp.Value, true));
                    else
                        ht.Add(kvp.Key, kvp.Value.ToString());
                }
               
                oBiz = new Biz.FW.FWXmlAutoBiz();
                dsData = oBiz.XmlGetData("uspProductAccessoryOrderRemarkList", ht);

                if (dsData != null && dsData.Tables.Count > 0 && dsData.Tables[0].Rows.Count > 0)
                {
                    var list = new List<Dictionary<string, object>>();

                    foreach (DataRow row in dsData.Tables[0].Rows)
                    {
                        var dict = new Dictionary<string, object>();

                        foreach (DataColumn col in dsData.Tables[0].Columns)
                        {
                            if (col.ColumnName == "ProductAccessoryOrderRemark_Idx")
                                dict[col.ColumnName] = EncryptKey(row[col]).ToString();
                            else if (col.ColumnName == "Remark")
                                dict[col.ColumnName] = Convert.ToString(row[col]).Replace("\n", "<br />");
                            else
                                dict[col.ColumnName] = (Convert.ToString(row[col]));
                        }

                        list.Add(dict);
                    }

                    JavaScriptSerializer serializer = new JavaScriptSerializer();
                    result = serializer.Serialize(list);
                }
            }

            return result;
        }

 

 

PM_AO_View.aspx

PM_AO_View.aspx.cs

+ Recent posts