PropertyEventMethod찾아보기
$w - 5.0_1.3521B.20190311.114514

WebSquare에서 많이 쓰이는 Util성 API를 제공한다.
본래는 WebSquare 객체 하위로 패키지 단위로 API가 구성되있으며 개발자의 편의성을 위해 API를 단축하여 제공하고 있다.

Type

engine

Property Summary

Event Summary

Method Summary

ajax( options )
submission과 비슷한 기능을 제공하는 통신 모듈로 submission에 비해 자유도가 높다.
clearInterval( keyName , force )
웹스퀘어에서 제공하는 API로 등록 한 Interval 객체를 해제한다
clearPage( )
브라우저를 갱신하여 브라우저를 초기상태로 되돌리는 함수. ( 웹스퀘어 엔진 및 리소스를 새로 로딩한다. )
clearTimeout( key , force )
웹스퀘어에서 제공하는 setTimer API를 이용하여 등록 한 함수를 직접 clearTimeout시킨다
closePopup( id )
웹스퀘어서 제공하는 openPopup, createPopup API를 이용하여 팝업의 id를 할당 한 경우 해당 id의 popup을 찾아 닫는다
createSubmission( submissionObj )
동적으로 submission을 생성한다
dateAdd( day1 , offset )
날짜에 지정된 수만큼 더합니다
dateDiff( startDate , endDate )
두 날짜 사이의 차이를 반환합니다
download( actionUrl , XML , sendMethod )
서버에 download 모듈이 구현 되어있는 url을 호출하여 화면에서 download 할 수 있는 인터페이스를 제공한다
executeParallel( submission , processMsg , finalCallback , rejectCallback , id )
workflow 를 생성하지않고 기존 submission들을 parallel 하게 순서를 보장하여 처리하고자 할때 사용
executeSerial( submission , processMsg , finalCallback , rejectCallback , id )
workflow 를 생성하지않고 기존 submission들을 serial 하게 순서를 보장하여 처리하고자 할때 사용
executeSubmission( submissionID , requestData , obj )
submissionID에 해당하는 submission을 실행시킨다
executeWhilst( submissionId , condFn , maxRepeat , processMsg , resolveCallback , rejectCallback , id )
workflow 를 생성하지않고 특정 submission을 반복적으로 호출하고자 할때 사용
executeWorkflow( workflowId )
workflowId or workflowObj 을 받아서 workflow 실행
getAllBASE64Parameter( )
Base64로 Encoding 된 get방식의 전체 parameter를 Base64 Decoding하여 JSON 형태로 반환합니다
getAllParameter( )
get방식으로 넘어 온 parameter 전체를 JSON 형태로 반환합니다
getBASE64Parameter( param )
Base64로 Encoding 된 get방식의 parameter(param)를 Base64 Decoding하여 반환합니다
getCurrentServerDate( pattern )
서버(WAS)의 현재 시간을 반환한다.
getFormattedDate( dateObj , pattern )
javascript의 Date객체를 받아서 지정 된 format으로 반환한다.
getIntervalKeyList( )
setInterval API의 key로 등록 된 값 전부를 array로 반환한다
getMaxMinYear( )
config파일에 설정 된 date 설정의 maxYear 와 minYear 값을 JSON로 반환합니다
getParameter( param )
get방식으로 넘어 온 parameter 또는 openPopup API의 dataObject에 정의 한 값을 반환합니다.
getParentFrame( )
wframe안의 스크립트 영역에서 이 함수를 호출할 경우 부모의 wframe object를 반환한다
getParentId( )
wframe안의 스크립트 영역에서 이 함수를 호출할 경우 부모의 wframe id를 반환한다
getPopupId( )
popup으로 열린 화면에서 popup의 id를 가져오는 함수
getPopupParam( )
openPopup API를 이용하여 popup을 만들때 dataObject 속성 또는 xml 속성에 정의 한 값을 string으로 반환한다.
getPopupUrl( )
popup으로 열린 화면에서 현재 화면의 url을 가져오는 함수
getPopupWindow( id )
openPopup API에 정의한 id로 검색하여 해당 popup의 window를 반환한다.
getRunningWorkflow( workflowID )
실행중인 첫번째 Workflow 객체를 반환합니다
getRunningWorkflowID( )
실행중인 Workflow ID를 반환합니다
getRuntimeId( )
컴포넌트의 id(화면내에서의 id)를 입력받아 컴포넌트의 실제 id를 반환하는 함수.
getStringByteSize( str )
주어진 string의 byte size를 반환한다
getSubmission( submissionID )
submissionID에 해당하는 submission 객체를 반환한다.
getTimeoutKeyList( )
setTimeout API의 key로 등록 된 값 전부를 array로 반환한다
getWorkflow( id )
id에 해당하는 Workflow 객체를 반환합니다
hideModal( )
웹스퀘어의 Modal Layer를 hide시킨다
isPopup( )
현재 Window(화면)가 popup인지의 여부를 반환합니다
isRunningWorkflow( workflowID )
실행중인 Workflow 가 있는지 여부를 반환합니다.
isWframePopup( )
현재 화면이 wframe popup으로 열린 화면인지를 판별하는 함수
js( scriptUrl , callback )
여러 개의 외부 script를 로드할 때 스크립트별 순서제어가 필요한 경우 사용합니다
log( msg )
브라우저에서 로그보기 메뉴 또는 브라우저 개발자 도구의 console에 로그를 출력한다.
openPopup( url , options , params , target )
popup을 속성에 따라 생성한다
parseDate( dateStr , format )
날짜 포맷을 Date로 변환합니다
reinitialize( browserRefresh )
브라우저 refresh 없이 페이지를 다시 로딩하거나 또는 브라우저를 refresh합니다
rejectWorkflow( reject , workflowID )
실행중인 Workflow 를 Reject 시킵니다
setDisabled( obj )
지정한 컴포넌트의 하위로 disabled를 처리한다
setDocumentLang( lang )
html태그의 lang 속성에 언어 코드를 설정 한다
setDomain( domain )
document.domain의 속성값을 변경한다.
setInterval( func , options )
사용자가 지정한 함수가 주기적으로 실행된다
setTimeout( func , options )
사용자가 지정한 함수가 일정 시간 후에 실행된다
showModal( popupComponents )
Modal Layer를 띄우고 지정한 componentID는 popup(enabled)처리한다
toTimestampString( dateObj )
javascript의 Date 객체를 java sql의 Timestamp에서 사용되는 형태와 동일하게 반환한다
url( w2xPath , options )
화면 전환 시 웹스퀘어 화면(w2xPath에 해당하는)의 경로만 전달하여 페이지를 이동할 수 있게 해주는 함수.
URLEncoder( str )
주어진 문자열을 application/x-www-form-urlencoded MIME Format문자열로 변환합니다

Property Detail

Event Detail

Method Detail

ajax( options )
submission과 비슷한 기능을 제공하는 통신 모듈로 submission에 비해 자유도가 높다.
request/response 데이터의 type은 string이며 js로 된 암/복호화 모듈을 연동하기 쉬운 구조로 되어있다.
Parameter
nametyperequireddescription
optionsJSONYJSON형태 객체
<String:Y> options.action : ajax 요청주소 <String:N> options.mode : [default: asynchronous,synchronous] <String:Y> options.mediatype : [default: application/xml, application/x-www-form-urlencoded, application/json, text/xml] <String:N> options.method : [default: POST, GET, PUT, DELETE] <String:N> options.requestData : 요청본문 <JSON:N> options.requestHeader : request header에 지정 할 JOSN객체 <Number:N> options.timeout : ajax요청후 timeout 시간. 이시간이 초과해도 응답이 오지 않는 경우 error callback함수를 실행 <String:N> options.type : [xml, json] xml인 경우 success callback함수의 인자객체의 responseBody속성에 xml객체가 설정된고, json인 경우 자바스크립트 객체가 설정된다.나머지 경우는 text형식이 설정. <Function:N> options.beforeAjax : 요청전에 실행되는 함수로 이 함수내에서 false를 return하면 ajax요청을 하지 않는다 <Function:N> options.success : 요청이 성공한 경우 실행되는 callback함수 <Function:N> options.error : 요청이 실패한 경우 실행되는 callback함수
Sample
var options = {}; options.action = "/test.jsp"; options.mode = "asynchronous"; options.mediatype = "text/json"; options.method = "POST"; options.requestData = '{ "name" : "WebSquare" , "addr" : "서울시" }'; options.requestHeader = {insUserData:"w5Edu"}; options.success = doSucess; //정의 된 function 객체 options.error = function( e ){ //functoin을 직접 정의 한 경우. //e.errorType - "target-error" 고정값 반환 //e.resourceUri - 통신 URI 반환 //e.responseHeaders - Response Headers 내용 반환 //e.responseStatusCode - Response Status Code 반환 //e.responseReasonPhrase - Response Status Text 반환 //e.requestBody - Request Data로 String 형태 반환 //e.responseText - Response Data 원본으로 String 형태 반환 //satus code alert으로 출력. alert("errorCode:"+e.responseStatusCode); }; $w.ajax( options ); //위의 예시 중 options.success에 지정 한 callback Function 정의 형태. function doSucess( e ){ //e는 웹스퀘어 엔진에서 통신 후 결과를 담을 JSON 객체이다. //e.resourceUri - 통신 URI 반환 //e.responseHeaders - Response Headers 내용 반환 //e.responseStatusCode - Response Status Code 반환 //e.responseReasonPhrase - Response Status Text 반환 //e.responseBody - Response Data를 XML 데이터로 parse 한 XML 객체 반환.( Response Content-Type이 JSON 인 경우 json객체를 XML로 parse) //e.responseText - Response Data 원본으로 String 형태 반환 //responseText를 alert으로 출력. alert("success\n"+e.responseText); }
clearInterval( keyName , force )
웹스퀘어에서 제공하는 API로 등록 한 Interval 객체를 해제한다. ( $w.setInterval )
Parameter
nametyperequireddescription
keyNameStringYkey로 지정한 값. ( $w.setInterval API 호출 시 options에 등록 한 key명)
forceBooleanNkeyName으로 지정 된 Interval 객체를 해제하기 전 해당 함수를 한 번 실행할지에 대한 여부. 기본값은 false.
Sample
//$w.setInterval API를 호출 시 options.key의 값이 "timer1" 로 정의 한 경우. $w.clearInterval("timer1");
clearPage( )
브라우저를 갱신하여 브라우저를 초기상태로 되돌리는 함수. ( 웹스퀘어 엔진 및 리소스를 새로 로딩한다. )
주로 spa 모드에서 브라우저 초기화가 필요한 경우 onpageunload 이벤트에서 이 함수가 사용된다.
Editor 컴포넌트나 Chart컴포넌트 등 spa 모드에서 메모리 릭이 존재하는 컴포넌트 사용 시 해당 페이지의 body에 onpageunload이벤트를 등록하고 이 함수를 호출한다.
$w.url(WebSquare.baseURI + "blank.xml", {spa:true, forceReload:true}); 함수를 호출한 것과 동일하다.
Sample
<body> <script type="javascript" ev:event="onpageunload"><![CDATA[ $w.clearPage(); // 브라우저를 갱신하여 초기상태로 되돌린다. 이 경우 웹스퀘어 엔진 및 리소스를 새로 로딩하게 된다. ]]></script> </body>
clearTimeout( key , force )
웹스퀘어에서 제공하는 setTimer API를 이용하여 등록 한 함수를 직접 clearTimeout시킨다. ( $w.setTimer )
Parameter
nametyperequireddescription
keyStringY$w.setTimer로 등록할 때 options.key로 지정 한 키값.
forceBooleanNsetTimer로 등록된 함수를 실행할지에 대한 여부. 기본값은 false.
Sample
//$w.setTimer API의 options.key 의 값이 "timer1" 인 경우. $w.clearTimeout("timer1");
closePopup( id )
웹스퀘어서 제공하는 openPopup, createPopup API를 이용하여 팝업의 id를 할당 한 경우 해당 id의 popup을 찾아 닫는다.
Parameter
nametyperequireddescription
idStringYpopup의 id
Sample
$w.closePopup("popup1");
createSubmission( submissionObj )
동적으로 submission을 생성한다.
Parameter
nametyperequireddescription
submissionObjJSONY등록할 submission객체. 속성은 아래와 같습니다.
<String:Y> submissionObj.id : submission 객체의 ID. 통신 모듈 실행 시 필요. <String:N> submissionObj.ref : 서버로 보 낼(request) DataCollection의 조건 표현식.(조건에 때라 표현식이 복잡하다) 또는 Instance Data의 XPath. <String:N> submissionObj.target : 서버로 응답(response) 받은 데이터가 위치 할 DataCollection의 조건 표현식. 또는 Instance Data의 XPath. <String:N> submissionObj.action : 통신 할 서버 측 URI.(브라우저 보안 정책으로 crossDomain은 지원되지 않는다.) <String:N> submissionObj.method : [default: post, get, urlencoded-post] get:파라메타를 url에 붙이는 방식 (HTML과 동일). post:파라메타를 body 구간에 담는 방식 (HTML과 동일). urlencoded-post:urlencoded-post. <String:N> submissionObj.mediatype : [default: application/xml, text/xml, application/json, application/x-www-form-urlencoded] application/x-www-form-urlencoded : 웹 form 방식(HTML방식). application/json : json 방식. application/xml : XML 방식. text/xml : xml방식 (두 개 차이는 http://stackoverflow.com/questions/4832357 참조) <String:N> submissionObj.mode : [default: synchronous, synchronous] 서버와의 통신 방식. asynchronous:비동기식. synchronous:동기식 <String:N> submissionObj.encoding : [default: utf-8, euc-kr, utf-16] 서버 측 encoding 타입 설정 (euc-kr/utf-16/utf-8) <String:N> submissionObj.replace : [default: none, all, instance] action으로부터 받은 response data를 적용 구분 값. all : 문서 전체를 서버로부터 온 응답데이터로 교체. Instance : 해당되는 데이터 구간. None : 교체안함. <String:N> submissionObj.processMsg : submission 통신 중 보여줄 메세지. <String:N> submissionObj.errorHandler : submission오류 발생 시 실행 할 함수명. <String:N> submissionObj.customHandler : submssion호출 시 실행 할 함수명. <Function:N> submissionObj.submitHandler : <script type="javascript" ev:event="xforms-submit"> 에 대응하는 함수. <Function:N> submissionObj.submitDoneHandler : <script type="javascript" ev:event="xforms-submit-done"> 에 대응하는 함수 <Function:N> submissionObj.submitErrorHandler : <script type="javascript" ev:event="xforms-submit-error">에 대응하는 함수
Sample
var submissionObj = { "id" : "submission_dynamic0", "ref" : "data:json,dc_reqDataMap", "target" : "data:json,dc_resDataMap", "action" : "/data/sampleData.json", "method" : "post", "mediatype" : "application/json", "encoding" : "UTF-8", "mode" : "asynchronous", "processMsg" : "processing ~ ~ ~ ", "submitDoneHandler" : function(e) { alert(e.responseText); }, "submitErrorHandler" : function(e) { alert(e.responseStatusCode); } }; $w.createSubmission( submissionObj );
dateAdd( day1 , offset )
날짜에 지정된 수만큼 더합니다. ( date + offset )
Parameter
nametyperequireddescription
day1StringY지정 날짜
offsetNumberY목표 날짜와의 편차
Return
typedescription
Stringoffset에 정의 된 수 많큼 더거나 뺀 날짜
Sample
var tmpDate1 = $w.dateAdd( 20120102, 7 ); return 예시 ) tmpDate1 : 20120109 var tmpDate2 = $w.dateAdd( 20140101, -7 ); return 예시 ) tmpDate2 : 20131225
dateDiff( startDate , endDate )
두 날짜 사이의 차이를 반환합니다.( to - from )
Parameter
nametyperequireddescription
startDateStringY시작 날짜
endDateStringY끝 날짜
Return
typedescription
Number두 날짜의 차이
Sample
var diff = $w.dateDiff( "20120120", "20120210" ); return 예시 ) diff : 21
download( actionUrl , XML , sendMethod )
서버에 download 모듈이 구현 되어있는 url을 호출하여 화면에서 download 할 수 있는 인터페이스를 제공한다.
Parameter
nametyperequireddescription
actionUrlStringY파일 다운로드가 구현되어있는 url.
XMLStringN문자열은 xmlValue라는 이름으로 서버로 올라간다. 값을 지정하지 않은 경우(undefined인 경우) xmlValue라는 값은 제외하고 서버로 전송한다.
sendMethodStringNget, post와 같은 전송 방식, 기본값은 post이다.
Sample
var url = "/download.do" //파일 다운로드가 구현 되어있는 서버 url. ( 웹스퀘어의 기본 모듈에는 제공되지 않는다) $w.download( url );
executeParallel( submission , processMsg , finalCallback , rejectCallback , id )
workflow 를 생성하지않고 기존 submission들을 parallel 하게 순서를 보장하여 처리하고자 할때 사용
submission1 call -> submission2 call -> submission1 callback -> submission2 callback
Parameter
nametyperequireddescription
submissionarrayYid array ex) ["submission1", "submission2", "submission3"]
processMsgStringN
finalCallbackfunctionNfunction
rejectCallbackfunctionNfunction
idStringN
Sample
$w.executeParallel( ["submission1", "submission2", "submission3"],processMsg, final_callback, reject_callback, id) ; submission1,submission2, submission3 call -> submission1 callback -> submission2 callback -> submission3 callback -> final_callback or reject_callback
executeSerial( submission , processMsg , finalCallback , rejectCallback , id )
workflow 를 생성하지않고 기존 submission들을 serial 하게 순서를 보장하여 처리하고자 할때 사용
submission1 call -> submission1 callback -> submission2 call -> submission2 callback
Parameter
nametyperequireddescription
submissionarrayYid array ex) ["submission1", "submission2", "submission3"]
processMsgStringN
finalCallbackfunctionNfunction
rejectCallbackfunctionNfunction
idStringN
Sample
$w.executeSerial( ["submission1", "submission2", "submission3"], processMsg,final_callback, reject_callback) ; submission1 call/callback -> submission2 call/callback -> submission3 call/callback -> final_callback or reject_callback
executeSubmission( submissionID , requestData , obj )
submissionID에 해당하는 submission을 실행시킨다.
Parameter
nametyperequireddescription
submissionIDStringYsubmission의 id.
requestDataObjectN요청 데이터
objObjectN전송중 disable시킬 컴퍼넌트
Sample
$w.executeSubmission ("submission1") ; id가 submission1인 submission을 실행.
executeWhilst( submissionId , condFn , maxRepeat , processMsg , resolveCallback , rejectCallback , id )
workflow 를 생성하지않고 특정 submission을 반복적으로 호출하고자 할때 사용
Parameter
nametyperequireddescription
submissionIdStringYsubmission ID
condFnfunctionY실행여부를 체크하는 condition function
maxRepeatintY최대실행 회수. conditon으로만 체크가능한 경우에는 무한루프에 대한 제어용으로도 사용가능
processMsgStringN
resolveCallbackfunctionNfinalCallback function
rejectCallbackfunctionNrejectCallback function
idStringN
Sample
$w.executeWhilst( "submission1", cond_check, 100, processMsg,final_callback, reject_callback, id) ; submission 을 cond_check sucess 이고 100회 미만 까지 반복 call/callback 수행 -> final_callback or reject_callback
executeWorkflow( workflowId )
workflowId or workflowObj 을 받아서 workflow 실행
Parameter
nametyperequireddescription
workflowIdObjectYworkflow 아이디 or workflowObj
Sample
$w.executeWorkflow ("workflow1") ; workflowCollection/workflow id가 workflow1인 workflow를 실행. 또는 var workflowObj= {"id":"workflow1", "processMsg" : "workflow실행 중입니다.. ", "service" : [{ "type":"submission", "id" : "submission1"}, { "type":"submission","condition": cond, "id" : "submission2"}, { "type":"submissionCallback", "id" : "submission1", "callback":post}, { "type":"submissionCallback", "id" : "submission2", "callback":post} ], "finalCallback" : final_callback, "rejectCallback": reject_callback }) ; $w.executeWorkflow (workflowObj) ; workflowObj object로 workflow를 실행.
getAllBASE64Parameter( )
Base64로 Encoding 된 get방식의 전체 parameter를 Base64 Decoding하여 JSON 형태로 반환합니다.
Sample
$w.getAllBASE64Parameter();
getAllParameter( )
get방식으로 넘어 온 parameter 전체를 JSON 형태로 반환합니다.
Sample
var getParam = $w.getAllParameter();
getBASE64Parameter( param )
Base64로 Encoding 된 get방식의 parameter(param)를 Base64 Decoding하여 반환합니다.
Parameter
nametyperequireddescription
paramStringN값을 가져올 uri에서 지정된 param
Return
typedescription
Stringparam 문자열 반환
Sample
$w.getBASE64Parameter("name");
getCurrentServerDate( pattern )
서버(WAS)의 현재 시간을 반환한다.
Java의 SimpleDateFormat의 pattern을 인자로 받아서 시간을 표현한다.
pattern을 입력하지 않는 경우에는 yyyyMMdd 패턴의 결과를 반환한다.
Parameter
nametyperequireddescription
patternStringN[default:yyyyMMdd] 날짜 표현식
Return
typedescription
String서버 날짜(시간) String
Sample
// y Year 1996; 96 //M Month in year 07 //d Day in month 10 //H Hour in day (0-23) 0 //m Minute in hour 30 //s Second in minute 55 //S Millisecond 978 var dateStr = $w.getCurrentServerDate(); //yyyyMMdd return 예시 ) dateStr : 20111225 var dateStr = $w.getCurrentServerDate("yyyy-MM-dd HH:mm:ss"); return 예시 ) dateStr : 2014-11-07 15:49:10:080
getFormattedDate( dateObj , pattern )
javascript의 Date객체를 받아서 지정 된 format으로 반환한다.
pattern을 입력하지 않는 경우에는 java의 System.currentTimeMillis API와 같은 값을 반환한다.
Parameter
nametyperequireddescription
dateObjDateObjectYJavaScript의 date객체
patternStringN날짜 표현식
Return
typedescription
String지정된 format으로 시간을 반환
Sample
//날짜 표현식 //y Year 1996; 96 //M Month in year 07 //d Day in month 10 //H Hour in day (0-23) 0 //m Minute in hour 30 //s Second in minute 55 //S Millisecond 978 var dateObj = new Date(); var dateStr = $w.getFormattedDate ( dateObj, “MM.yyyy” ); return 예시 ) dateStr : 11.2014
getIntervalKeyList( )
setInterval API의 key로 등록 된 값 전부를 array로 반환한다.
Return
typedescription
ArraysetInterval에 등록 된 key 배열
Sample
var IntervalKeyList = $w.getIntervalKeyList(); for(var i = 0; i < IntervalKeyList.length; i++) { $w.clearInterval(IntervalKeyList[i]); } // 등록된 타이머를 전부 제거
getMaxMinYear( )
config파일에 설정 된 date 설정의 maxYear 와 minYear 값을 JSON로 반환합니다.
Return
typedescription
JSONconfig.xml에 설정 되어있는 maxYear,minYear 값.
<Number> maxYear [defalut:2099] config.xml에 설정 되어있는 maxYear. <Number> minYear [defalut:1901] config.xml에 설정 되어있는 minYear.
Sample
config.xml 에서 아래와 같이 정의된 설정값을 기본값으로 합니다. <websquare> <date> <maxYear value="2099" /> <minYear value="1000" /> </date> </websquare> var maxMinYear = $w.getMaxMinYear(); //return 예시 ) maxMinYear.maxYear : 2099 (yyyy) //return 예시 ) maxMinYear.minYear : 1000 (yyyy)
getParameter( param )
get방식으로 넘어 온 parameter 또는 openPopup API의 dataObject에 정의 한 값을 반환합니다.
get방식의 경우 한글 parameter는 WebSquare.text.URLEncoder로 값을 인코딩해야 한글이 깨지지 않는다.
웹스퀘어의 URLEncoding을 사용 해제를 원할 경우 config 파일에 아래와 같은 설정이 필요하다.
<net><websquareDecoder value="false" /><net>
Parameter
nametyperequireddescription
paramStringY값을 가져올 uri에서 지정된 param 또는 openPopup API에 정의 한 dataObject의 name에 정의 한 값.
Return
typedescription
String|JSONurl에 정의 한 param 문자열. 또는 openPopup에 정의 한 dataObject. parameter가 존재하지 않는 경우에는 ""이 반환.
Sample
//URL : http://localhost:8080/websquare/websquare.html?w2xPath=/test.xml&&userID=1234 var tmpUserID = $w.getParameter("userID"); //return 예시 ) "1234" //$w.openPopup의 dataObject 속성을 아래와 같이 지정한 경우 //dataObject : { type : "json", data : {name:"WebSquare",addr:"서울시"}, name : "rowObj" } var popRowObj = $w.getParameter("rowObj"); //return 예시 ) {name:"WebSquare",addr:"서울시"} //type : JSON 객체
getParentFrame( )
wframe안의 스크립트 영역에서 이 함수를 호출할 경우 부모의 wframe object를 반환한다. 전역스크립트에서 호출 시에는 null을 반환한다.
Return
typedescription
Objectwframe 객체
Sample
// main.xml 안에 <w2:wframe id='wframe1' src='sub.xml'/> 있는 경우 scwin.$w.getParentFrame(); // sub.xml에서 위 스크립트 실행 시 wframe1객체가 반환된다. // main.xml에서 위 스크립트를 실행하면 null을 반환한다.
getParentId( )
wframe안의 스크립트 영역에서 이 함수를 호출할 경우 부모의 wframe id를 반환한다. 전역스크립트에서 호출 시에는 null을 반환한다.
Return
typedescription
Stringwframe의 id
Sample
// main.xml 안에 <w2:wframe id='wframe1' src='sub.xml'/> 있는 경우 scwin.$w.getParentId(); // sub.xml에서 위 스크립트 실행 시 'wframe1'을 반환한다. // main.xml에서 위 스크립트를 실행하면 null을 반환한다.
getPopupId( )
popup으로 열린 화면에서 popup의 id를 가져오는 함수. popup을 wframe으로 띄웠을 경우에 필요한 함수이다.
Return
typedescription
Stringpopup으로 열린 화면의 popup id.
getPopupParam( )
openPopup API를 이용하여 popup을 만들때 dataObject 속성 또는 xml 속성에 정의 한 값을 string으로 반환한다.
dataObject 속성과 xml 속성이 둘다 정의 된 경우 dataObject의 값만 반환한다.
dataObject 속성을 이용한 경우 $w.getParameter("dataObject의 name에 할당 한 값") API를 이용하길 권장한다.
Return
typedescription
Stringpopup을 만들때 dataObject 속성 또는 xml 속성에 정의 한 값의 string.
Sample
//openPopup API의 dataObject 속성을 아래와 같이 정의 한 경우 //dataObejct : {type:"json" , name:"tmpData" , data:{"test":"WebSquare"}} var dataStr = $w.getPopupParam(); //return 예시 ) {"test":"WebSquare"}
getPopupUrl( )
popup으로 열린 화면에서 현재 화면의 url을 가져오는 함수. popup을 wframe으로 띄웠을 경우에 필요한 함수이다.
Return
typedescription
String현재 화면의 url을 반환한다. wframe내에서 해당 함수 호출 시 wframe 화면의 url을 가져온다.
getPopupWindow( id )
openPopup API에 정의한 id로 검색하여 해당 popup의 window를 반환한다.
popup안의 컴포넌트 및 전역변수 등에 접근이 가능한다.
Parameter
nametyperequireddescription
idStringYpopup의 id
Return
typedescription
Object해당 popup의 window
Sample
//팝업의 id가 popup1인 경우의 window 객체 반환 var popWinObj = $w.getPopupWindow("popup1"); //팝업에 tmpVal로 선언 된 전역 변수 접근시 var popTmpVal = popWinObj.tmpVal; //팝업에 input1의 ID를 가진 컴포넌트의 value 값 가져오기 var popInputVal = popWinObj.input1.getValue();
getRunningWorkflow( workflowID )
실행중인 첫번째 Workflow 객체를 반환합니다.
Parameter
nametyperequireddescription
workflowIDStringNworkflow 아이디
Return
typedescription
Object실행 중인 workflow object
Sample
실행이 진행되는 구간(condition, defaultCallback, callback, finalCallback, rejectCallback등) 에서만 객체를 구할 수 있음 완료된 submission들의 실행결과 객체는 workflowObj.result 로 구할 수있음 var workflowObj = $w.getRunningWorkflow( );
getRunningWorkflowID( )
실행중인 Workflow ID를 반환합니다.
Return
typedescription
String실행중인 workflow ID
Sample
실행중인 workflow ID 반환 var runID = $w.getRunningWorkflowID( );
getRuntimeId( )
컴포넌트의 id(화면내에서의 id)를 입력받아 컴포넌트의 실제 id를 반환하는 함수.
wframe의 scope기능 사용 시 wframe내의 컴포넌트의 실제 id는 wframe의 id + _ + 컴포넌트id 형태가 되는데, 이 실제 id를 가져오는 함수이다.
Return
typedescription
String컴포넌트의 실제 id
Sample
// main.xml 안에 <w2:input id='input1'/> <w2:wframe id='wframe1' src='sub.xml'/> 있고 // sub.xml 안에 <w2:input id='input2'/> 가 있는 경우 // sub.xml에서 scwin.$w.getRuntimeId("input2") 호출 시 'wframe1_input2' 를 반환한다. // sub.xml에서 scwin.$w.getRumtimeId('input1') 호출 시 'input1' 을 반환한다. // main.xml에서 scwin.$w.getRuntimeId("input2") 호출 시 ''을 반환한다. // main.xml에서 scwin.$w.getRuntimeId("input1") 호출 시 'input1'을 반환한다.
getStringByteSize( str )
주어진 string의 byte size를 반환한다. 한글 byte는 config.xml파일의 <byteCheckEncoding value="euc-kr" /> 설정에 따라 다르게 반환한다. euc-kr 인 경우 2byte로, utf-8인 경우 3byte로 계산한다.
Parameter
nametyperequireddescription
strStringYbyte size를 알아낼 string
Return
typedescription
Numberbyte size
Sample
var dataLength = $w.getStringByteSize("websquare"); //return 예시 ) dataLength : 9 var dataLength2 = $w.getStringByteSize("안녕"); //return 예시 ) dataLength2 : 4 //<byteCheckEncoding value="euc-kr" /> 일 경우 //return 예시 ) dataLength2 : 6 //<byteCheckEncoding value="utf-8" /> 일 경우
getSubmission( submissionID )
submissionID에 해당하는 submission 객체를 반환한다.
정의 된 submission의 action, ref, target 등의 속성을 변경할 수 있다.
Parameter
nametyperequireddescription
submissionIDStringYsubmission의 아이디.
Return
typedescription
SubmissionObjectsubmission id를 통해서 찾은 submission 객체
Sample
//다음과 같이 submission이 존재하는 경우. <xf:submission id="submission1" ref="data:json,reqDataMap1" target="data:json,resDataMap1" action="/getUserInfo.jsp" method="post" mediatype="application/json" encoding="UTF-8" mode="asynchronous" processMsg=""> </xf:submission> //submission 객체 반환 var sub = $w.getSubmission( "submission1" ); //submission의 속성 변경 sub.action = "/getBookInfo.jsp"; sub.ref = "data:json,reqDataMap2";
getTimeoutKeyList( )
setTimeout API의 key로 등록 된 값 전부를 array로 반환한다.
Return
typedescription
ArraysetTimeout로 등록 된 키 목록
Sample
var timeoutKeyList = $w.getTimeoutKeyList(); for(var i = 0; i < timeoutKeyList.length; i++) { $w.clearTimeout(timeoutKeyList[i]); } // 등록된 타이머를 전부 제거
getWorkflow( id )
id에 해당하는 Workflow 객체를 반환합니다.
Parameter
nametyperequireddescription
idStringYworkflow 아이디
Return
typedescription
Objectid를 통해서 찾은 workflow
Sample
xml에 workflow1 이 정의되어 있는 경우에는 실행 전이라도 객체를 구할 수 있음 동적으로 생성된 경우에는 실행이 진행되는 구간(condition, callback, finalCallback, rejectCallback등) 에서만 객체를 구할 수 있음 완료된 submission들의 실행결과 객체는 workflowObj.result 로 구할 수있음 var workflowObj = $w.getWorkflow( "workflow1" );
hideModal( )
웹스퀘어의 Modal Layer를 hide시킨다.
Sample
$w.hideModal();
isPopup( )
현재 Window(화면)가 popup인지의 여부를 반환합니다.
Return
typedescription
boolean팝업인 경우 true, 팝업이 아닌 경우 false
Sample
var ispopup = $w.isPopup(); //return 예시 ) false
isRunningWorkflow( workflowID )
실행중인 Workflow 가 있는지 여부를 반환합니다.
workflowID 가 전달된 경우에는 해당 id 의 workflow 실행여부를 반환합니다.
Parameter
nametyperequireddescription
workflowIDStringNworkflow 아이디
Return
typedescription
boolean실행여부
Sample
실행중인 workflow 가 있는지 여부 반환 var isRun = $w.isRunningWorkflow( );
isWframePopup( )
현재 화면이 wframe popup으로 열린 화면인지를 판별하는 함수.
Return
typedescription
Booleanwframe popup으로 사용된 경우 true, 그렇지 않을 경우 false 반환.
Sample
// main.xml 스크립트 영역에서 아래의 스크립트를 실행 scwin.$w.openPopup("w1.xml", {"type" : "litewindow", "frameMode" : "iframe"}); scwin.$w.openPopup("w2.xml", {"type" : "litewindow", "frameMode" : "wframe"}); // main.xml에서 scwin.$w.isWframePopup() 실행 시 false 반환. // w1.xml에서 scwin.$w.isWframePopup() 실행 시 false 반환. // w2.xml에서 scwin.$w.isWframePopup() 실행 시 true 반환.
js( scriptUrl , callback )
여러 개의 외부 script를 로드할 때 스크립트별 순서제어가 필요한 경우 사용합니다. 인자로 넘어온 script들 loading은 병렬로 진행하면서 실행은 순서대로 실행하는 기능을 제공합니다. 그리고 마지막 인자의 type이 function인 경우, 모든 스크립트 로딩이 끝난 후 해당 function을 실행합니다 (callback)
Parameter
nametyperequireddescription
scriptUrlStringYjavascript url주소. 인자 개수는 가변입니다. load할 script를 여러개 지정할 경우 script url주소를 script개수만큼 인자로 전달합니다.
callbackFunctionN전달된 마지막 인자의 type이 function인 경우, 이전까지 인자로 전달된 모든 스크립트의 실행이 완료된 후에 해당 함수가 실행됩니다. 즉 callback 함수입니다.
Sample
$w.js("/common/js/common.js", "/common/js/test1.js", "/common/js/test2.js", function(){alert("all done");}); // common.js, test1.js, test2.js 로딩은 병렬로 이루어지며, 스크립트의 실행은 인자가 넘어온 순서인 common.js -> test1.js -> test2.js 순서로 실행됨. // test2.js 실행이 끝나면 callback 함수가 실행되고 따라서 alert("all done"); 이 실행된다.
log( msg )
브라우저에서 로그보기 메뉴 또는 브라우저 개발자 도구의 console에 로그를 출력한다.
출력하는 값 중 객체의 Type이 Object인 경우는 오류가 발생 할 수 있음으로 String으로 변환한다.
브라우저 console에 로그를 출력하기 위해선 config.xml에 아래와 같이 설정(console="true")이 필요하다.
<debug value="true" console="true"/>
Parameter
nametyperequireddescription
msgStringY출력 할 메시지
Sample
$w.log('Log Test');
openPopup( url , options , params , target )
popup을 속성에 따라 생성한다.
Parameter
nametyperequireddescription
urlStringYpopup창의 url
optionsObjectYpopup의 options. (width, height 등)
<String:N> options.id : [default: ppo1] popup의 id <String:N> options.type : [default: browser] 팝업의 종류. 값은 window 혹은 browser (기본 값). browser인 경우 useIFrame 속성과 상관없이 window.open으로 열림. <String:N> options.width : [default: 500px] 팝업의 width 설정값. <String:N> options.height : [default: 500px] 팝업의 height 설정값. <String:N> options.top : [default: 100px] 팝업의 top 설정값. useIframe이 true인 경우 브라우져를 기준, false인 경우 모니터를 기준으로 계산. <String:N> options.left : [default: 100px] 팝업의 left 설정값. useIframe이 true인 경우 브라우져를 기준, false인 경우 모니터를 기준으로 계산. <String:N> options.popupName : [default: WebSquarePopup] 팝업 객체의 이름. 팝업 프레임의 표시줄에 표시. <String:N> options.modal : [default: false] modal을 이용해서 뒤 쪽 배경을 동작하지 않도록 만들기 위한 인자. false이면 뒤쪽의 컴포넌트 사용 가능. <String:N> options.useModalStack : [default: false] 여러 개의 팝업을 생성할 경우, 제일 마지막에 표시되는 팝엄만 활성화. (true: 마지막 팝업만 활성화. false: 모든 팝업을 활성화.) (5.0_1.2701A.20170714.211228 버전에서 추가.) <String:N> options.useIFrame : [default: false] type="window" 혹은 "litewindow"인 경우, 팝업창을 IFrame 혹은 WFrame으로 생성하도록 지정. 이 값이 true이면 IFrame 혹은 WFrame을 사용한 WebSquare 팝업을 생성하고 이 값이 false이면 window.open을 이용한 팝업을 생성. <String:N> options.frameMode : [default: ""] type="window" 혹은 "litewindow"이고 useIFrame="true"인 경우, 팝업창 내부 영역을 WFrame 혹은 IFrame을 사용하여 생성. <String:N> options.style : [default: ""] 팝업의 스타일. 값이 있으면 left top width height는 적용되지 않음. <String:N> options.srcData : [default: null] 팝업 객체의 type 이 window 일 때 Parent 에서 넘길 xpath. <String:N> options.destData : [default: null] 팝업 객체의 type 이 window 일 때 popup 에 설정할 xpath. <Object:N> options.dataObject : popup에 설정할 변수의 데이터 타입과 데이터, 변수명을 입력하는 객체. (예) { type: ["xml","string","json","array"], data: "전달 데이터" , name :"변수명"} <String:N> options.xml : [default: null] 팝업에 넘길 xml. Document의 string popup창에서 WebSquare.uiplugin.popup.getPopupParam() api를 사용하여 가져올수 있음. <String:N> options.resizable : [default: false] size 조절 유무 (useIfrmae이 false인 경우 적용) <String:N> options.status : [default: false] status 출력 유무 (useIfrmae이 false인 경우) <String:N> options.menubar : [default: false] menubar 출력 유무 (useIfrmae이 false인 경우) <String:N> options.scrollbars : [default: false] scrollbar 출력 유무 (useIfrmae이 false인 경우) <String:N> options.title : [default: false] title 출력 유무 (useIfrmae이 false인 경우) <String:N> options.useMaximize : [default: true] useIFrame:true 설정시 상단 title 영역을 더블클릭 할 경우 최대화 시킬지 유무 <String:N> options.closeAction : [default: ""] useIFrame:true 설정시 닫기 버튼을 클릭 할 경우 팝업을 닫기전 호출된 사용자 정의 funcion 이름. 사용자정의 함수 에서 return true;시 팝업을 닫는다. <String:N> options.className : [default: ""] userIFrame: true 설정시 팝업의 디자인을 변경하기 위한 class. <String:N> options.fullscreen : [default: false] fullscreen: true 설정시 전체화면으로 팝업을 띄웁니다. (IE 전용) <String:N> options.useControl : [default: false] useControl: true 설정시 최소화, 최대화, 닫기 버튼을 사용할 수 있다. type="litewindow" 혹은 type+"window"이고 useIFrame="true"인 경우 유효. <String:N> options.foldOnMinimized : [default: false] foldOnMinimize: true 설정시 최소화 동작이 팝업 접기 동작으로 바뀐다. 아래의 controls 옵션에서 "minimize:true"로 설정할 경우, "foldOnMinimize:true"로 설정해야 함. (5.0_1.2783B.20170908.145609 버전에서 추가.) <Object:N> options.controls : [default: { minimized:true, maximized:true, close:true }] 특정 컨트롤 버튼을 보이거나 숨길 수 있다. (useControl 속성이 true일 때 동작) "minimize:true"를 사용할 경우, "foldOnMinimize:true"를 지정해야 함. "foldOnMinimize:false" 설정을 사용하면 화면이 접히지 않고 사라짐.(5.0_1.2799B.20170918.104858 버전에서 추가.) <Object:N> options.foldSize : [default: { width: 500 }] foldSize: minimize(fold) 동작시의 크기를 지정할 수 있다. (controls 옵션에서 "minimize:true"이고 "foldOnMinimize:true"인 경우 유효.)
paramsNullN사용되지 않는 파라메터로 4번째 파라메터를 사용 할 경우 null로 입력.
targetObjectNwindow객체. default로 window
Sample
requires("uiplugin.popup"); //팝업을 사용하기 위해 반드시 포함되어야 한다. //dataList1.getRowJSON와 같은 API 호출 시 반환 객체. var rowJSON = { "addr": "서울시", "name": "손예진", "rowStatus": "R" }; //popup에 넘길 data객체. var dataObj={ type : "json", // 데이터 타입. "xml","string","json","array" data : rowJSON, // 전달 데이터 객체. name : "rowObj" // 변수명. popup에서 $w.getParameter( "rowObj" )로 깨내올 수 있다. }; var options = { id : "popup1", type : "browser", width: "230px", height: "250px", top: "130px", left: "200px", popupName : "openPopup1", modal : true, useIFrame : useIFrame, resizable : true, status : true, menubar : false, scrollbars : false, title : false, dataObject : dataObj }; $w.openPopup("/popup.xml", options );
parseDate( dateStr , format )
날짜 포맷을 Date로 변환합니다. (기본 포맷 : yyyyMMdd)
Parameter
nametyperequireddescription
dateStrStringY날짜 스트링
formatStringN날짜 포맷. 구분기호(delimiter)는 제외한다.
Return
typedescription
DateJavaScript의 Date 객체.
Sample
var dateObj = $w.parseDate ("20120101"); //(결과값) Sun Jan 01 2012 00:00:00 GMT+0900 (KST) var dateObj = $w.parseDate("2012-01-01"); //(결과값) Sun Jan 01 2012 00:00:00 GMT+0900 (KST) var dateObj = $w.parseDate("2012-01-01","yyyyMMdd"); //(결과값) Sun Jan 01 2012 00:00:00 GMT+0900 (KST) //날짜 포맷은 delimiter를 포함할 수 없습니다. 아래의 경우 오류가 발생합니다. var dateObj = $w.parseDate("2012-01-01","yyyy-MM-dd"); //(결과값) null - 스크립트 오류. var dateObj = $w.parseDate ("01222013112430", "MMddyyyyHHmmss"); //(결과값) Tue Jan 22 2013 11:24:30 GMT+0900 (KST)
reinitialize( browserRefresh )
브라우저 refresh 없이 페이지를 다시 로딩하거나 또는 브라우저를 refresh합니다.
Parameter
nametyperequireddescription
browserRefreshBooleanN[default:false, true] 브라우저를 refresh할 것인지에 대한 여부.
Sample
$w.reinitialize(); //브라우저를 refresh하지 않고 해당 페이지를 다시 로딩한다. $w.reinitialize(true); //브라우저를 refresh한다.
rejectWorkflow( reject , workflowID )
실행중인 Workflow 를 Reject 시킵니다. workflowID 가 전달된 경우에는 해당 workflow가 실행중인 경우에만 Reject 시킵니다.
Parameter
nametyperequireddescription
rejectStringN사유 메시지
workflowIDStringN
Return
typedescription
ObjectReject 된 workflow Object
Sample
var workflowObj = $w.rejectWorkflow( );
setDisabled( obj )
지정한 컴포넌트의 하위로 disabled를 처리한다.
Parameter
nametyperequireddescription
objJSONYdisabled 설정이 담긴 객체
<String:N> obj.componentId :[default:body] 컴포넌트 Id, 비어있으면 body <boolean:Y> obj.disabled : [default:false, true] disabeld 적용 여부 <Array<String>:N> obj.excludeIdList : 제외할 컴포넌트 Id가 담긴 Array (미입력시 전체 적용) <Array<String>:N> obj.includeIdList : 허용할 컴포넌트 Id가 담긴 Array (미입력시 전체 적용)
Return
typedescription
JSONJSON형태의 값을 반환한다.
<Array> object.doneComponents 완료한 컴포넌트 ID가 담긴 Array <Array> object.skipComponents 이미 disabled 처리되어 있어 Skip한 컴포넌트 ID가 담긴 Array
Sample
$w.setDisabled({"disabled":true}); //전체 disabled $w.setDisabled({"disabled":false}); //전체 enabled $w.setDisabled({"componentId":"group1", "disabled":true}); //group1 하위의 컴포넌트를 disabled $w.setDisabled({"componentId":"", "disabled":true, "excludeIdList": ["output10"]}); //output10을 제외한 전체 disabled $w.setDisabled({"componentId":"", "disabled":true, "includeIdList": ["output1","output2"]}); //output1,output2만 disabled
setDocumentLang( lang )
html태그의 lang 속성에 언어 코드를 설정 한다.
Parameter
nametyperequireddescription
langStringYhtml태그의 lang속성에 설정할 언어 코드. ex) xml:lang="ko"
Sample
$w.setDocumentLang("ko");
setDomain( domain )
document.domain의 속성값을 변경한다.
"www.inswav.com"을 "inswave.com"으로 변경이 가능하나 "support.inswave.com"으로는 변경이 불가하다.
일반적으로 frame 및 popup 연동 시 host가 다른 domain끼리의 data 통신을 위해 사용된다.( parent 또는 opener의 domain과 iframe,popup의 domain을 동일하게 정의해야한다.)
cross-domain이란? 호출하는 도메인과 호출받는 도메인이 다른 경우, 다시말해 서로 다른 도메인에서 자바스크립트로 접근하려 했을 때 혹은 다른 서버에 Ajax통신의 결과를 받을 때 브라우저에서 보안상 접근을 거부하며 "권한이 없습니다."와 같은 오류 메세지를 출력한다.
Parameter
nametyperequireddescription
domainStringY공통 domain
Sample
//URL이 www.inswave.com 의 경우. $w.setDomain("inswave.com"); //가능 $w.setDomain("support.inswave.com"); //불가
setInterval( func , options )
사용자가 지정한 함수가 주기적으로 실행된다.(javascript의 setInterval의 기능을 확장지원) SPA모드에서 페이지 이동 시 자동으로 제거한다.
Parameter
nametyperequireddescription
funcFunctionY실행할 함수
optionsJSONNoptions인자로는 아래와 같은 인자가 사용된다.
<String:N> options.key : interval을 구별하기 위한 키값. 이 값이 지정되지 않은 경우 키값을 func.toString().slice(0,30)을 키값으로 사용한다. <Number:N> options.delay : func로 지정한 함수가 실행 될 간격으로 기본값은 1ms(millisecond / 1000분의 1초)이다. javascript setInterval의 2번째 인자값. <Object:N> options.caller : func로 지정한 함수내에서 this값으로 지정 할 객체(웹스퀘어 컴포넌트 포함). <Object:N> options.args : func에 전달할 인자값. array형태로 인자를 전달한다. <function:N> options.before_call : func로 지정한 함수가 실행되기 직전에 실행 할 함수. func함수와 마찬가지로 data를 인자로 받는다. <function:N> options.callback : func로 지정한 함수가 실행된 후에 실행 할 함수. func로 지정한 함수의 return값을 인자로 받는다.
Sample
//2초마다 input1 컴포넌트의 value를 alert으로 표현한다. $w.setInterval(function(){alert(this.getValue());}, {caller:input1, delay:2000, key:"interval1"});
setTimeout( func , options )
사용자가 지정한 함수가 일정 시간 후에 실행된다. SPA모드에서 페이지 이동 시 자동으로 제거한다.
Parameter
nametyperequireddescription
funcFunctionY실행할 함수
optionsJSONNoptions인자로는 아래와 같은 인자가 사용된다.
<String:N> options.key : timeout을 구별하기 위한 키값. 이 값이 지정되지 않은 경우 키값을 func.toString().slice(0,30)을 키값으로 사용한다. <Number:N> options.delay : func로 지정한 함수가 실행 될 간격으로 기본값은 1ms(millisecond / 1000분의 1초)이다. javascript setTimeout의 2번째 인자값. <Object:N> options.caller : func로 지정한 함수내에서 this값으로 지정 할 객체(웹스퀘어 컴포넌트 포함). <Object:N> options.args : func에 전달할 인자값. array형태로 인자를 전달한다. <function:N> options.before_call : func로 지정한 함수가 실행되기 직전에 실행 할 함수. func함수와 마찬가지로 data를 인자로 받는다. <function:N> options.callback : func로 지정한 함수가 실행된 후에 실행 할 함수. func로 지정한 함수의 return값을 인자로 받는다.
Sample
//5분 후 메세지를 alert으로 띄운다. $w.setTimeout(function(){alert('5분이 지났습니다. 로그인을 연장하시겠습니까?');}, {delay:300000, key:"loginTimeout"});
showModal( popupComponents )
Modal Layer를 띄우고 지정한 componentID는 popup(enabled)처리한다.
Parameter
nametyperequireddescription
popupComponentsArrayNPopup할 Component Id가 담긴 Array
Sample
var popupComponents=["input1", "trigger1"]; $w.showModal( popupComponents );
toTimestampString( dateObj )
javascript의 Date 객체를 java sql의 Timestamp에서 사용되는 형태와 동일하게 반환한다. (yyyy-mm-dd hh:mm:ss.fffffffff)
Parameter
nametyperequireddescription
dateObjDatetYJavaScript date객체
Return
typedescription
Stringyyyy-mm-dd hh:mm:ss.fffffffff 형식의 string
Sample
var dateObj = new Date(); var dateStr = $w.toTimestampString (dateObj); return 예시 ) dateStr : 2014-03-11 11:01:47.219000
url( w2xPath , options )
화면 전환 시 웹스퀘어 화면(w2xPath에 해당하는)의 경로만 전달하여 페이지를 이동할 수 있게 해주는 함수.
options에 추가 인자를 통해 spa로 페이지를 이동할 수 있다.
Parameter
nametyperequireddescription
w2xPathStringYxml 파일의 경로
optionsJSONNSPA에 관련 된 추가 설정.
<Boolean:N> options.spa : [default:false, true] true인 경우 w2xPath를 해시(#)로 전달하며, false인 경우에는 w2xPath를 서치(?)로 전달한다. spa 옵션값을 명시하지 않은 경우, config.xml의 spa값(default:false)을 사용한다. <Boolean:N> options.forceReload : 페이지 이동 후 브라우저를 강제로 갱신할 것인지에 대한 여부. spa가 true인 경우에만 의미가 있는 옵션이다. spa로 페이지를 계속 이동하다보면 전역 자원이 쌓여서 메모리 릭이 발생할 수 있는데, 이런 경우 중간에 한번 씩 forceReload를 true로 설정하여 브라우저가 갱신되어 전역 자원을 초기화 시켜 메모리릭을 방지 할 수있다. <Boolean:N> options.replaceHistory : 브라우저의 히스토리를 덮어 쓸 것인지에 대한 여부. true인 경우 내부적으로 location.replace 함수를 호출하며 false인 경우에는 location.assign함수를 호출된다. <JSON:N> options.param : 페이지 이동 시 추가로 전달할 인자들을 json형태로 전달한다. json 객체로 전달 할 수 있는 data는 string 타입만 가능하다. $w.getParameter 와 $w.getAllParameter API로 꺼내 올 수 있다. <Boolean:N> options.shortURL : url을 w2xPath에 해당하는 경로만 전달할 것인지 http://... 와 같이 전체 경로를 전달할 것인지에 대한 옵션. 옵션 값을 지정하지 않은 경우 엔진 내부에서 자동으로 판단한다.
Sample
var param1 = { "name":"WebSquare", "ID":"tmpVal1" }; $w.url("/bar.xml", {"spa" : true, "replaceHistory" : true, "param" : param1}); // bar.xml을 SPA로 페이지 이동하면서 name,ID 파라메터 전달 //bar.xml에서 param1의 값을 꺼내오는 방법 $w.getParameter("name"); //return 예시 ) WebSquare $w.url("/bar.xml", {"spa" : true, "forceReload" : true, "param" : param1}); // bar.xml을 SPA로 이동하면서 브라우저를 재로딩하고 name,ID 파라메터 전달
URLEncoder( str )
주어진 문자열을 application/x-www-form-urlencoded MIME Format문자열로 변환합니다.
Parameter
nametyperequireddescription
strStringY
Return
typedescription
String변환된 application/x-www-form-urlencoded MIME Format문자열을 반환합니다
Sample
var encodeStr = $w.URLEncoder( "문자열" ); //return 예시 ) "%b9%ae%c0%da%bf%ad"