XML 데이터 사용
SBGrid는 XML을 이용하여 DATA를 표시할 수 있습니다.
요약
SBGrid는 XML을 이용하여 DATA를 표시할 수 있습니다.입력값
String : Xpath Data name
예) SBGrid.DS.XMLStorage.getUniqueStorage().getInstance().loadXML(instance_data)
상세설명
StrNodeSet 속성으로 데이터 path 설정을 하고 loadXML()으로 DATA를 표시할 수 있습니다.<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <%@page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <html xmlns="http://www.w3.org/1999/xhtml" lang="ko" xml:lang="ko"> <head> <meta content="IE=9" http-equiv="X-UA-Compatible"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>SoftBowl SBGrid Example</title> <script type="text/javascript" src="../../kr/co/softbowl/js/Library/json-minified.js"></script> <script type="text/javascript" src="../../js/jquery-1.7.2.min.js"></script> <script type="text/javascript" src="../../kr/co/softbowl/js/Library/json2.js"></script> <script type="text/javascript" src="../../kr/co/softbowl/SBGrid.js"></script> <script type="text/javascript" src="../../js/DATA_XML_POI_100.js"></script> <script type="text/javascript"> SBGrid.DEF.DOMAIN = "../../"; <script> <script type="text/javascript"> var datagrid1, datagrid2; $(document).ready(function(){ __createElements(); }); function __createElements (){ var GridInitInfo = { "strParentId" : "sbGridArea", "strId": "datagrid1", "strCaption": "Longitude^Latitude^Name^City Code^Classification", "strColWidth": "100, 100, 250, 139, 92", "strNodeSet": "/root/grid/data", "strStyle": "width:100%; height:480px; ", "strDataHeight":"29", "strBackColorAlternate" : "#f7f7f7", "strExtendLastCol" : "scroll" }; var SBGridColumnInitInfo = [ { "id": "col1", "type": "output", "ref": "x" }, { "id": "col2", "type": "output", "ref": "y" }, { "id": "col3", "type": "output", "ref": "name" }, { "id": "col4", "type": "output", "ref": "city", "strNodeSet": "/root/combo_city/nodeset", "strLabelRef": "label", "strValueRef": "value" }, { "id": "col5", "type": "output", "ref": "code", "strNodeSet": "/root/combo_code/nodeset", "strLabelRef": "label", "strValueRef": "value" } ]; datagrid1 = createSBGrid(GridInitInfo,SBGridColumnInitInfo); datagrid1.setRowHeight(0, 30); } function createSBGrid(SBGridInitInfo, SBGridColumnInitInfo){ var objJSONdata = new Object(); objJSONdata.objSBGridInitInfo = SBGridInitInfo; objJSONdata.arSBGridColumnInitInfo = SBGridColumnInitInfo; return SBGrid.DEF.createSBGrid(objJSONdata); } function loadXmlData(){ SBGrid.DS.XMLStorage.getUniqueStorage().getInstance().loadXML(instance_data); datagrid1.refresh(); } function loadXmlData2(){ SBGrid.DS.XMLStorage.getUniqueStorage().getInstance().loadXML(instance_data); datagrid2.refresh(); } function getValueOfXpath(){ var strValue = "/root/grid/data[2]/name = " strValue += SBGrid.DS.XMLStorage.getUniqueStorage().getValue(("/root/grid/data[2]/name")); alert(strValue); } function setValueOfXpath(){ SBGrid.DS.XMLStorage.getUniqueStorage().setValue(("/root/grid/data[2]/name"),"Data가 변경되었습니다."); datagrid1.refresh(); } function setValueOfXpath2(){ SBGrid.DS.XMLStorage.getUniqueStorage().setValue(("/root/grid/data[2]/name"),"Data가 변경되었습니다."); datagrid2.refresh(); } </script> </head> <body onload="__createElements()" class="sbgrid_body"> <div id="button_group"> <input type="button" class="sbgrid_demo_button" style="width:700px;height:30px;" id="button_XML_Load" value="Load XML Data" onclick="loadXmlData();"></input> <input type="button" class="sbgrid_demo_button" style="width:348px;height:30px;" id="button_getValue" value="Xpath로 XML DATA 가져오기" onclick="getValueOfXpath();"></input> <input type="button" class="sbgrid_demo_button" style="width:348px;height:30px;" id="button_setValue" value="Xpath로 XML DATA 설정하기" onclick="setValueOfXpath();"></input> </div> <div class="content_group"> <div id="sbGridArea"></div> </div> </div> </body> </html>