diff --git a/WebContent/jsp/onl/apim/portalnotice/portalNoticeMan.jsp b/WebContent/jsp/onl/apim/portalnotice/portalNoticeMan.jsp index d70554a..a53fa07 100644 --- a/WebContent/jsp/onl/apim/portalnotice/portalNoticeMan.jsp +++ b/WebContent/jsp/onl/apim/portalnotice/portalNoticeMan.jsp @@ -20,7 +20,9 @@ var combo; function formatNoticeType(cellvalue, options, rowObject) { - var name = ""; + if (!combo || !combo.noticeTypeList) { + return cellvalue; + } for (var i = 0; i < combo.noticeTypeList.length; i++) { if (combo.noticeTypeList[i].CODE == cellvalue) { return combo.noticeTypeList[i].NAME; @@ -89,8 +91,11 @@ console.log('init', json); combo = json; new makeOptions("CODE","NAME").setObj($("select[name=searchNoticeType]")).setNoValueInclude(true).setNoValue('','<%=localeMessage.getString("combo.all")%>').setData(json.noticeTypeList).rendering(); - + putSelectFromParam(); + + // 콤보(combo)가 채워진 뒤에 그리드를 생성해야 formatNoticeType 경합이 발생하지 않음 + buildGrid(); }, error:function(e){ alert(e.responseText); @@ -98,8 +103,8 @@ }); } - $(document).ready(function() { - + function buildGrid(){ + $('#grid').jqGrid({ datatype:"json", mtype: 'POST', @@ -172,9 +177,13 @@ } }); - init(); - resizeJqGridWidth('grid','content_middle','1000'); + } + + $(document).ready(function() { + + // 콤보 로드 → 콤보 성공 콜백에서 buildGrid() 호출 (경합 방지) + init(); $("#btn_search").click(function(){ var postData = getSearchForJqgrid("cmd","LIST");