PropertyEventMethod찾아보기
CheckBox - 5.0_1.2484A.20170126.120903

HTML에서 input Tag의 type="checkbox"와 같은 기능을 제공하는 컴포넌트로 나열된 항목을 다중으로 선택 할 수 있다.
주의 사항으로는 본 컴포넌트가 브라우저에 표현 될 때는 input Tag가 아닌 최상위에 div Tag로 감싸고 하위에 복합 Tag를 이용하여 표현하고 있음으로 input Tag로 표현하고자 할 때는 별도의 설정을 통해 변경해야 한다.

Type

uiplugin

Property Summary

appearance
xforms select1의 appearance속성
class
HTML의 class속성과 동일한 기능을 제공하며 css파일 또는 style블럭에 정의 한 class를 1개 또는 공백(space)를 이용하여 다중 적용이 가능하다.
cols
항목을 나열 할 열의 수로 2로 정의 할 경우 2열씩 자동개행되어 표현된다
disabled
[default:false, true] HTML의 disabled속성과 동일한 기능을 제공하며 컴포넌트를 비활성화 시킨다
displaymessage
[default:false, true] validate API를 호출 하였을 때 검증 실패에 대한 결과 메세지를 표시 할지의 여부.
escape
<>&"를 HTML Escape 문자로 변환하여 화면에 표시한다
falseValue
어떤 항목도 선택되지 않았을 때의 value.
id
컴포넌트의 ID로 전역객체로 할당되며 script에서 본 id로 컴포넌트에 접근이 가능하다
ignoreTabIndex
tab이동시 포커스를 무시한다
invalidMessage
validate API를 호출 하였을 때 검증 실패에 대한 결과 메세지를 본 속성의 값으로 표현되는 기능으로 displaymessage속성이 true로 되어있어야 한다.
invalidMessageFunc
validate API를 호출 하였을 때 검증 실패에 대한 결과 메세지를 별도로 정의 한 Function에서 동적으로 표현 할 수 있는 기능으로 정의 된 function의 이름을 명시한다.
itemTagname
renderType이 "checkboxgroup"일 때, 아이템의 tagname
mandatory
[default:false, true]validate API를 호출 시 필수입력을 체크 할지의 여부
ref
DataCollection의 value 경로로 컴포넌트와 DataCollection의 value를 binding을 시킬 때 사용하며 "data:"라는 prefix는 필수로 붙여주어야 한다.
renderType
[default:table, native, checkboxgroup] 본 컴포넌트가 브라우저에 표현 될 레이아웃 구조로 세부 내용은 아래와 같다.
rows
항목을 나열 할 행의 수로 2로 정의 할 경우 전체 항목이 2행으로 나뉘어 표현된다
selectedindex
초기 선택 될 항목의 index로 항목이 하드코딩되어있거나 DataList에 data가 미리 정의 되어있을 경우에만 동작 된다.
tabIndex
Tab Key를 이용 한 컴포넌트의 포커스 순서로 HTML의 tabindex속성과 동일한 기능을 제공한다
tagname
renderType이 "checkboxgroup"일 때, 렌더링 될 객체의 tagname
title
HTML의 title속성과 동일한 기능으로 명시 된 값을 브라우저에서 마우스 over시 툴팁형태로 표현한다
toolTip
웹스퀘어에서 만든 toolTip으로 컴포넌트의 추가정보를 명시한다
useCheckboxTitle
[default:true, false] 웹 접근성을 위해 checkbox의 항목(버튼)에 title의 표시 유무
useLocale
[default:false, true] Client 다국어를 이용하여 항목의 label에 표현되는 값을 다국어 key를 이용하여 표현 할 지에 대한 설정이다
userData1
사용자 정의 데이터 속성
userData2
사용자 정의 데이터 속성
userData3
사용자 정의 데이터 속성
validator
유효성 체크 함수명

Event Summary

onchange
사용자가 항목을 선택/변경하거나 API를 이용하여 value를 설정할 경우 발생하며 사용자가 항목을 선택했을때만 제어하고자 할 경우 onviewchange 이벤트를 사용한다.
oncheckboxclick
checkbox가 click 된 경우 발생하는 이벤트로 label click시에는 발생하지 않는다.
onlabelclick
label이 클릭된 경우 발생하는 이벤트로 checkbox click시에는 발생하지 않는다.
onviewchange
키보드나 마우스 조작을 통해 항목이 선택/변경 된 경우에만 발생하는 이벤트. API를 통해 값이 변경된 경우에는 이벤트가 발생하지 않는다.(native onchange 이벤트와 유사.)

Method Summary

addClass( className )
컴포넌트에 class를 추가한다
addItem( value , label , index )
항목을 추가하는 기능으로 index를 주지 않으면 하위로 추가된다
bind( eventType , function )
컴포넌트의 이벤트를 동적으로 할당한다
changeClass( oldClassName , newClassName )
컴포넌트에서 oldClassName의 이름을 가진 class를 newClassName으로 변경한다.
checkAll( checkFlag )
모든 항목을 선택하거나 해제 시킨다
click( index )
index에 해당하는 항목을 click 한 것과 같은 효과를 내어 해당 항목이 선택/해제된다.
deleteItem( index )
index에 해당하는 항목을 삭제한다
focus( )
컴포넌트에 focus를 준다
getDisabled( )
현재 설정되어있는 disabled 속성값을 반환한다
getID( )
웹스퀘어 컴포넌트의 id를 반환한다
getItemCount( )
항목 수를 반환한다
getItemDisabled( index )
index에 해당하는 항목의 활성화(disabled) 여부를 반환한다
getOpacity( )
CSS로 정의 된 컴포넌트의 Opacity(불투명도) 값을 반환한다
getPluginName( )
웹스퀘어 컴포넌트의 pluginName(컴포넌트명)을 반환한다
getPosition( positionName )
컴포넌트의 left 또는 top의 위치 값을 반환한다
getSelectedIndex( separator )
선택 된 항목들의 index를 반환하는 기능으로 항목이 여러 개인 경우 separator를 구분자로 하여 반환한다.
getSize( sizeName )
컴포넌트의 크기 값을 반환합니다
getStyle( propertyName )
컴포넌트에 적용 된 CSS의 propertyName에 해당하는 값을 반환한다
getStyleValue( style )
[deprecated]getStyle로 사용.
getText( separator )
선택 된 항목들의 label을 반환하는 기능으로 항목이 여러 개인 경우 separator를 구분자로 하여 반환한다.
getTitle( )
title 속성값을 반환한다
getUserData( key )
setUserData API로 설정 된 사용자 데이터 또는 소스(화면 XML)에 사용자가 임의의 property로 정의 된 값을 반환한다
getValue( separator )
선택 된 항목들의 value를 반환하는 기능으로 항목이 여러 개인 경우 separator를 구분자로 하여 반환한다.
hasClass( className )
컴포넌트가 parameter로 받은 className의 class를 가지고 있는지의 여부를 반환한다
hide( )
컴포넌트를 화면에서 보이지 않도록 숨긴다.
removeAll( )
모든 항목을 삭제한다
removeClass( className )
컴포넌트에 className의 class를 삭제한다.
reset( )
모든 항목의 체크를 해제한다
setDisabled( disabled )
컴포넌트의 disabled 속성을 설정한다
setEventPause( evList , flag )
컴포넌트의 이벤트를 disable 또는 enable시킨다
setItemDisabled( index , falg )
index에 해당하는 항목을 비활성화시키거나 활성화 시킨다
setNodeSet( nodeset , label , value )
항목의 itemset 설정을 변경하는 기능으로 DataList와 연동 할 경우 nodeset 파라메터에 "data:" prefix를 꼭 붙여야한다
setOpacity( value )
컴포넌트의 CSS Opacity(불투명도)값를 설정한다
setPosition( left , top , mode )
컴포넌트의 위치(left,top)를 설정한다
setRef( ref )
ref 속성을 설정하는 기능으로 DataCollection과 연동시 "data:"라는 prefix를 꼭 붙여야한다.
setSelectedIndex( index )
index에 해당하는 항목을 check/uncheck(toggle)한다
setSize( width , heigth )
컴포넌트의 크기(width,height)를 설정한다
setStyle( propertyName , value )
컴포넌트의 property별 style을 설정한다
setUserData( key , value )
컴포넌트에 사용자 데이터를 설정한다
setValue( value )
파라메터로 넘어온 value가 항목에 있는 경우 해당 항목이 선택되며 해당값으로 value가 할당된다.
show( displayType )
컴포넌트를 화면에 보이도록 설정한다.
toggleClass( className )
컴포넌트가 className의 이름을 가진 class를 가지고 있다면 제거하고, 가지고 있지 않다면 추가한다.
trigger( type , array )
컴포넌트에 등록 된 특정 이벤트를 발생시킨다
unbind( type , function )
컴포넌트에 등록 된 이벤트를 제거한다
validate( )
컴포넌트의 정의 된 유효성에 관련 속성값을 통해 유효성 검사를 실행한다.
visible( flag )
[deprecated]show/hide 로 사용하거나 setStyle을 통해 visible 속성을 설정한다.

Property Detail

appearance
xforms select1의 appearance속성
class
HTML의 class속성과 동일한 기능을 제공하며 css파일 또는 style블럭에 정의 한 class를 1개 또는 공백(space)를 이용하여 다중 적용이 가능하다.
기본적으로 엔진 내부에서 각 컴포넌트 마다의 class를 적용하고 있으며 해당 class를 이용하여 컴포넌트의 css를 공통으로 적용 할 수 있다.
cols
항목을 나열 할 열의 수로 2로 정의 할 경우 2열씩 자동개행되어 표현된다.
disabled
[default:false, true] HTML의 disabled속성과 동일한 기능을 제공하며 컴포넌트를 비활성화 시킨다.
displaymessage
[default:false, true] validate API를 호출 하였을 때 검증 실패에 대한 결과 메세지를 표시 할지의 여부.
기본적으로 엔진에서 정의 된 메세지가 표현되며 별도의 메세지를 정의하고자 할 때는 invalidMessageFunc속성을 이용한다.
escape
<>&"를 HTML Escape 문자로 변환하여 화면에 표시한다.
falseValue
어떤 항목도 선택되지 않았을 때의 value.
기본적으로 항목이 선택되지 않았을 경우의 value는 ""(empty string)이지만 본 속성에 값을 설정하면 해당 값으로 value를 반환한다.
id
컴포넌트의 ID로 전역객체로 할당되며 script에서 본 id로 컴포넌트에 접근이 가능하다.
ignoreTabIndex
tab이동시 포커스를 무시한다.
invalidMessage
validate API를 호출 하였을 때 검증 실패에 대한 결과 메세지를 본 속성의 값으로 표현되는 기능으로 displaymessage속성이 true로 되어있어야 한다.
invalidMessageFunc과 동시 적용이 불가하다.
invalidMessageFunc
validate API를 호출 하였을 때 검증 실패에 대한 결과 메세지를 별도로 정의 한 Function에서 동적으로 표현 할 수 있는 기능으로 정의 된 function의 이름을 명시한다.
displaymessage속성이 true로 되어있어야 하며 invalidMessage와 동시 적용이 불가하다.
사용자 Function(아래 예시 참조)에서는 this.getType()을 통해 검증 실패 type(아래 type 참조)과 this.getValue()를 value값을 가져와 메세지를 동적으로 생성하여 return 한다.
type)mandatory, allowChar, ignoreChar, minLength, maxLength, minByteLength, maxByteLength
예시)function fn_msg(){ var tmpType = this.getType(); var tmpValue = this.getValue(); if(tmpType == "mandatory"){ return "필수 검증 항목입니다."; } }
itemTagname
renderType이 "checkboxgroup"일 때, 아이템의 tagname
mandatory
[default:false, true]validate API를 호출 시 필수입력을 체크 할지의 여부.
ref
DataCollection의 value 경로로 컴포넌트와 DataCollection의 value를 binding을 시킬 때 사용하며 "data:"라는 prefix는 필수로 붙여주어야 한다.
작성 방법은 data:[DataCollection ID].[Key id 또는 Column id]와 같다. 예시)data:dataMap1.dept
DataList와 연동 된 경우는 GridView에서 선택 된 Row의 값이 binding 된다.
Instance Data와 연동 할 경우 연동 할 XML 데이터의 XPath를 명시한다. 예시)res/userInfo/dept/@value
renderType
[default:table, native, checkboxgroup] 본 컴포넌트가 브라우저에 표현 될 레이아웃 구조로 세부 내용은 아래와 같다.
table : input Tag를 사용하지 않고 div Tag하위로 table Tag를 이용하여 항목을 표현한다.
native : <input type="checkbox">만 생성하는 형태이다. textbox 컴포넌트를 이용하여 label Tag를 직접 생성해야하며 title 속성을 사용하지 않는 경우에는 필수로 생성해야한다.( 웹접근성 지침 관련 )
checkboxgroup : 레이아웃을 위한 Tag를 개발자가 직접 결정하는 형태로 기본적으로 div Tag를 이용하여 구성되며 tagname과 itemTagname 속성을 이용하여 최상위 Tag와 항목별 Tag를 설정 할 수 있다. ( 세부 설정은 웹접근성 가이드 문서 참조 )
rows
항목을 나열 할 행의 수로 2로 정의 할 경우 전체 항목이 2행으로 나뉘어 표현된다.
selectedindex
초기 선택 될 항목의 index로 항목이 하드코딩되어있거나 DataList에 data가 미리 정의 되어있을 경우에만 동작 된다.
주의 사항으로는 본 속성은 초기 컴포넌트가 브라우저에 표현되는 시점에 할당 된 Data를 기준으로 selected를 해주는 기능으로 화면 로딩 이후 API를 이용하여 항목을 생성하거나 통신 후 DataList에 data가 할당 되는 경우는 본 속성이 적용되지 않는다.
tabIndex
Tab Key를 이용 한 컴포넌트의 포커스 순서로 HTML의 tabindex속성과 동일한 기능을 제공한다.
tagname
renderType이 "checkboxgroup"일 때, 렌더링 될 객체의 tagname
title
HTML의 title속성과 동일한 기능으로 명시 된 값을 브라우저에서 마우스 over시 툴팁형태로 표현한다.
toolTip
웹스퀘어에서 만든 toolTip으로 컴포넌트의 추가정보를 명시한다. 마우스 over시 표현된다.
useCheckboxTitle
[default:true, false] 웹 접근성을 위해 checkbox의 항목(버튼)에 title의 표시 유무.
useLocale
[default:false, true] Client 다국어를 이용하여 항목의 label에 표현되는 값을 다국어 key를 이용하여 표현 할 지에 대한 설정이다.( 세부 내용은 Client 다국어 가이드 참고 )
userData1
사용자 정의 데이터 속성. getUserData("userData1") API를 통해 설정한 값을 얻어올 수 있다.
userData2
사용자 정의 데이터 속성. getUserData("userData2") API를 통해 설정한 값을 얻어올 수 있다.
userData3
사용자 정의 데이터 속성. getUserData("userData3") API를 통해 설정한 값을 얻어올 수 있다.
validator
유효성 체크 함수명

Event Detail

onchange
사용자가 항목을 선택/변경하거나 API를 이용하여 value를 설정할 경우 발생하며 사용자가 항목을 선택했을때만 제어하고자 할 경우 onviewchange 이벤트를 사용한다.
이벤트 핸들러(function)에서는 this를 이용하여 컴포넌트에 접근이 가능하다. ex)this.getValue();
oncheckboxclick
checkbox가 click 된 경우 발생하는 이벤트로 label click시에는 발생하지 않는다.
이벤트 핸들러(function)에서는 this를 이용하여 컴포넌트에 접근이 가능하다. ex)this.getValue();
Parameter
nametypedescription
indexString일어난 아이템(항목)의 index
checkedboolean일어난 아이템(항목)의 checked 상태
valueString일어난 아이템(항목)의 value
Sample
<script ev:event="oncheckboxclick( index, checked, value )"><![CDATA[ var itemIndex = index; //item의 index var itemChecked = checked; //item의 선택 여부 var itemValue = value; //item의 value var compValue = this.getValue(); //컴포넌트의 value ]]></script>
onlabelclick
label이 클릭된 경우 발생하는 이벤트로 checkbox click시에는 발생하지 않는다.
이벤트 핸들러(function)에서는 this를 이용하여 컴포넌트에 접근이 가능하다. ex)this.getValue();
Parameter
nametypedescription
indexString일어난 아이템(항목)의 index
checkedboolean일어난 아이템(항목)의 checked 상태
valueString일어난 아이템(항목)의 value
Sample
<script ev:event="onlabelclick( index, checked, value )"><![CDATA[ var itemIndex = index; //item의 index var itemChecked = checked; //item의 선택 여부 var itemValue = value; //item의 value var compValue = this.getValue(); //컴포넌트의 value ]]></script>
onviewchange
키보드나 마우스 조작을 통해 항목이 선택/변경 된 경우에만 발생하는 이벤트. API를 통해 값이 변경된 경우에는 이벤트가 발생하지 않는다.(native onchange 이벤트와 유사.)
이벤트 핸들러(function)에서는 this를 이용하여 컴포넌트에 접근이 가능하다. ex)this.getValue();
Parameter
nametypedescription
infoJSONindex, checked, value를 포함한 오브젝트를 반환합니다. <Number> info.index : 이벤트가 일어난 아이템(항목)의 index <Boolean> info.checked : 이벤트가 일어난 아이(항목)템의 checked 상태 <String> info.value : 이벤트가 일어난 아이템(항목)의 value
Sample
<script ev:event="onviewchange( info )"><![CDATA[ var itemIndex = info.index; //item의 index var itemChecked = info.checked; //item의 선택 여부 var itemValue = info.value; //item의 value var compValue = this.getValue(); //컴포넌트의 value ]]></script>

Method Detail

addClass( className )
컴포넌트에 class를 추가한다.
Parameter
nametyperequireddescription
classNameStringY추가하고 싶은 class의 이름
Sample
//input1 컴포넌트에 oddClass 라는 class를 추가 할 때 input1.addClass("oddClass");
addItem( value , label , index )
항목을 추가하는 기능으로 index를 주지 않으면 하위로 추가된다.
Parameter
nametyperequireddescription
valueStringY항목의 value
labelStringY항목의 label
indexNumberN항목의 추가될 index
Return
typedescription
Number추가 된 항목의 index
Sample
//아래와 같이 항목을 하드코딩하여 정의 한 경우 <xf:select id="checkbox1" appearance="full" style="position: relative;" selectedindex="-1" > <xf:choices> <xf:item> <xf:label><![CDATA[사과]]></xf:label> <xf:value><![CDATA[1]]></xf:value> </xf:item> <xf:item> <xf:label><![CDATA[체리]]></xf:label> <xf:value><![CDATA[2]]></xf:value> </xf:item> </xf:choices> </xf:select> var returnValue = checkbox1.addItem( '3', 'ornage' ); //return 예시 ) 2
bind( eventType , function )
컴포넌트의 이벤트를 동적으로 할당한다.
Parameter
nametyperequireddescription
eventTypeStringY할당 할 이벤트명.
functionFunctionY동적으로 할당 할 이벤트의 핸들러 function.
Sample
//input1에 onclick 이벤트에 핸들러 function을 직접 정의하여 bind. input1.bind("onclick", function(e){ alert(input1.getValue();})); //input1에 onclick 이벤트에 미리 정의 한 commObj.ev_click function을 bind. var commObj = {}; commObj.ev_click = function(e){ alert("click :: "+this.id); }; input1.bind("onclick", commObj.ev_click );
changeClass( oldClassName , newClassName )
컴포넌트에서 oldClassName의 이름을 가진 class를 newClassName으로 변경한다.
기본 설정은 addClass API를 통해 추가 된 class만 적용되며 컴포넌트의 class 속성에 직접 정의 된 class를 삭제해야하는 경우는 config.xml파일의 설정을 아래와 같이 적용해야한다.
<style><removeDefaultClass value="true" /></style>
Parameter
nametyperequireddescription
oldClassNameStringY삭제 할 class의 이름
newClassNameStringY추가 할 class의 이름
Sample
//아래와 같이 input 컴포넌트에 class를 정의 한 경우 <xf:input id="input1" style="position: relative;width: 144px;height: 21px;" class="tmpInputClass"></xf:input> //config.xml 파일에 아래와 같이 정의. <style> <removeDefaultClass value="true" /> </style> //tmpInputClass class를 tmpInputWarninClass로 변경 input1.changeClass("tmpInputClass","tmpInputWarninClass");
checkAll( checkFlag )
모든 항목을 선택하거나 해제 시킨다.
Parameter
nametyperequireddescription
checkFlagBolleanYtrue일 경우 전체 선택, false일 경우 전체 해제.
Sample
//전체 선택 checkbox1.checkAll(true); //전체 해제 checkbox1.checkAll(false);
click( index )
index에 해당하는 항목을 click 한 것과 같은 효과를 내어 해당 항목이 선택/해제된다.
또한 onviewchange등의 이벤트도 발생된다.
Parameter
nametyperequireddescription
indexNumberYclick 이벤트를 발생시킬 항목의 index
Sample
//첫번째 항목에 click 이벤트를 발생시킨다. checkbox1.click(0); //항목이 선택/해제 된다.
deleteItem( index )
index에 해당하는 항목을 삭제한다.
Parameter
nametyperequireddescription
indexNumberN삭제할 항목의 index
Return
typedescription
JSON삭제된 항목의 정보가 담긴 JSON
<String> label : 항목의 label <String> value : 항목의 value
Sample
//아래와 같이 항목을 하드코딩하여 정의 한 경우 <xf:select id="checkbox1" appearance="full" style="position: relative;" selectedindex="-1" > <xf:choices> <xf:item> <xf:label><![CDATA[사과]]></xf:label> <xf:value><![CDATA[1]]></xf:value> </xf:item> <xf:item> <xf:label><![CDATA[체리]]></xf:label> <xf:value><![CDATA[2]]></xf:value> </xf:item> </xf:choices> </xf:select> var returnValue = checkbox1.deleteItem( 0 ); //return 예시 ) {label: "사과", value: "1"}
focus( )
컴포넌트에 focus를 준다.
getDisabled( )
현재 설정되어있는 disabled 속성값을 반환한다.
Return
typedescription
Booleandisabled 속성값
Sample
var returnValue = componentId.getDisabled(); return 예시 ) false
getID( )
웹스퀘어 컴포넌트의 id를 반환한다.
Return
typedescription
String웹스퀘어 컴포넌트의 id
Sample
//동적으로 웹스퀘어 컴포넌트를 파라메터로 받았을 경우 아래와 같이 사용 할 수 있다. function fn_validCheck(tmpObj){ //tmpObj가 input1 이라는 ID를 가지고 있는 경우 var compID = tmpObj.getID(); //return 예시 ) "input1" }
getItemCount( )
항목 수를 반환한다.
Return
typedescription
Number항목 수
Sample
//총 2개의 항목이 있는 경우 var returnValue = checkbox1.getItemCount(); //return 예시 ) 2
getItemDisabled( index )
index에 해당하는 항목의 활성화(disabled) 여부를 반환한다.
Parameter
nametyperequireddescription
indexNumberY항목의 index
Return
typedescription
Boolean해당 항목의 비활성화 여부
Sample
//첫번째 항목이 활성화 되어있고 첫번째 항목의 활성여부를 반환 받고자 할 때. var returnValue = checkbox1.getItemDisabled(0); //return 예시 ) false
getOpacity( )
CSS로 정의 된 컴포넌트의 Opacity(불투명도) 값을 반환한다.
Return
typedescription
IntegerOpacity 값
Sample
//아래와 같이 input 컴포넌트에 opcacity css를 적용 한 경우 <xf:input id="input1" style="position: relative;width: 144px;height: 21px;opacity:0.2;"></xf:input> var returnValue = input1.getOpacity(); // returnValue는 0~1사이의 실수이다. //return 예시 ) "0.2"
getPluginName( )
웹스퀘어 컴포넌트의 pluginName(컴포넌트명)을 반환한다.
Return
typedescription
String웹스퀘어 컴포넌트의 pluginName
Sample
//아래와 같이 공통 function에서 동적으로 웹스퀘어 객체를 받았을 때 컴포넌트의 종류에 따른 분기처리를 할수 있다. var commObj = {}; commObj.fn_makeReqData = function(tmpObj){ var tmpID = tmpObj.getID(); //컴포넌트 ID var tmpCompType = tmpObj.getPluginName(); //컴포넌트 종류 if(tmpCompType == "input"){ //..로직.. }else if(tmpCompType == "gridView"){ //..로직 .. }else{ //..로직.. } };
getPosition( positionName )
컴포넌트의 left 또는 top의 위치 값을 반환한다. %로 설정된 경우, 픽셀로 변환하여 반환한다.
Parameter
nametyperequireddescription
positionNameStringY[left,top]위치 종류
Return
typedescription
Number컴포넌트의 위치 값
Sample
//아래와 같이 input 컴포넌트에 margin css를 적용했을 경우 <xf:input id="input1" style="position: relative;width: 144px;height: 21px;margin:10px;"></xf:input> var returnValue = input1.getPosition("top"); // returnValue는 픽셀 단위의 위치 값이다. //return 예시 ) 10
getSelectedIndex( separator )
선택 된 항목들의 index를 반환하는 기능으로 항목이 여러 개인 경우 separator를 구분자로 하여 반환한다.
separator를 설정하지 않은 경우 공백(space)이 구분자로 사용된다.
Parameter
nametyperequireddescription
separatorStringN항목간 구분자
Return
typedescription
String선택 된 항목의 index가 담긴 문자열.
Sample
//아래와 같이 컴포넌트가 정의 되고 사과와 오렌지가 선택 된 경우 <xf:select id="checkbox1" appearance="full" style="position: relative;" selectedindex="-1" > <xf:choices> <xf:item> <xf:label><![CDATA[사과]]></xf:label> <xf:value><![CDATA[1]]></xf:value> </xf:item> <xf:item> <xf:label><![CDATA[체리]]></xf:label> <xf:value><![CDATA[2]]></xf:value> </xf:item> <xf:item> <xf:label><![CDATA[오렌지]]></xf:label> <xf:value><![CDATA[3]]></xf:value> </xf:item> </xf:choices> </xf:select> var returnValue1 = checkbox1.getSelectedIndex(); //return 예시 ) "0 2" //,로 구분자 적용 var returnValue2 = checkbox1.getSelectedIndex(","); //return 예시 ) "0,2"
getSize( sizeName )
컴포넌트의 크기 값을 반환합니다.%로 설정된 경우, 픽셀로 변환하여 반환한다.
Parameter
nametyperequireddescription
sizeNameStringY[height,innerHeight,outerHeight,outerMarginHeight,width,innerWidth,outerWidth,outerMarginWidth]크기 값의 종류. szieName별 계산 방법은 아래를 참고.
height : element.clientHeight innerHeight : element.clientHeight + padding outerHeight : element.clientHeight + padding + border outerMarginHeight : element.clientHeight + padding + border + margin width : element.clientWidth innerWidth : element.clientWidth + padding outerWidth : element.clientWidth + padding + border outerMarginWidth : element.clientWidth + padding + border + margin
Return
typedescription
Number컴포넌트의 크기 값
Sample
var returnValue = componentId.getSize("width"); // returnValue는 픽셀 단위의 크기 값이다. %로 설정된 경우, 픽셀로 변환하여 반환한다. //return 예시 ) 100
getStyle( propertyName )
컴포넌트에 적용 된 CSS의 propertyName에 해당하는 값을 반환한다.
Parameter
nametyperequireddescription
propertyNameStringY반환 할 style의 property 이름
Return
typedescription
Stringstyle의 속성값
Sample
//아래와 같이 input 컴포넌트가 정의 된 경우 <xf:input id="input1" style="position: relative;width: 144px;height: 21px;"></xf:input> var returnValue = input1.getStyle("width"); //return 예시 ) "144px"
getStyleValue( style )
[deprecated]getStyle로 사용.
컴포넌트에 적용 된 CSS의 propertyName에 해당하는 값을 반환한다.
Parameter
nametyperequireddescription
styleStringY정의 된 style에서 사용자가 반환 받고자하는 속성명.
Return
typedescription
Stringstyle 속성에 정의 된 값(색을 반환하는 경우에는 색HexCode로 반환)
getText( separator )
선택 된 항목들의 label을 반환하는 기능으로 항목이 여러 개인 경우 separator를 구분자로 하여 반환한다.
separator를 설정하지 않은 경우 공백(space)이 구분자로 사용된다.
Parameter
nametyperequireddescription
separatorStringN항목 구분자
Return
typedescription
String선택 된 항목들의 label이 담긴 문자열
Sample
//아래와 같이 컴포넌트가 정의 되고 사과와 오렌지가 선택 된 경우 <xf:select id="checkbox1" appearance="full" style="position: relative;" selectedindex="-1" > <xf:choices> <xf:item> <xf:label><![CDATA[사과]]></xf:label> <xf:value><![CDATA[1]]></xf:value> </xf:item> <xf:item> <xf:label><![CDATA[체리]]></xf:label> <xf:value><![CDATA[2]]></xf:value> </xf:item> <xf:item> <xf:label><![CDATA[오렌지]]></xf:label> <xf:value><![CDATA[3]]></xf:value> </xf:item> </xf:choices> </xf:select> var returnValue = checkbox1.getText(); //return 예시 ) "사과 오렌지" //구분자 , 적용 var returnValue = checkbox1.getText(","); //return 예시 ) "사과,오렌지"
getTitle( )
title 속성값을 반환한다.
Return
typedescription
Stringtitle 속성값.
Sample
//아래와 같이 input 컴포넌트에 title이 정의 된 경우 <xf:input id="input1" style="position: relative;width: 144px;height: 21px;" title="이름 입력"></xf:input> var tmpTitle = input1.getTitle(); //return 예시 ) "이름 입력"
getUserData( key )
setUserData API로 설정 된 사용자 데이터 또는 소스(화면 XML)에 사용자가 임의의 property로 정의 된 값을 반환한다.
Parameter
nametyperequireddescription
keyStringY임의 데이터의 키
Return
typedescription
Stringkey에 해당하는 데이터
Sample
//아래와 같이 input 컴포넌트의 사용자 속성(eduTest)이 적용 된 경우. <xf:input id="input1" style="position: relative;width: 144px;height: 21px;" eduTest="Hello"></xf:input> input1.getUserData("eduTest"); //return 예시 ) "Hello" //setUserData를 통해 set한 경우 input1.setUserData("eduTest","WebSquare"); input1.getUserData("WebSquare"); //return 예시 ) "Hello"
getValue( separator )
선택 된 항목들의 value를 반환하는 기능으로 항목이 여러 개인 경우 separator를 구분자로 하여 반환한다.
separator를 설정하지 않은 경우 공백(space)이 구분자로 사용된다.
Parameter
nametyperequireddescription
separatorStringN항목 구분자
Return
typedescription
String컴포넌트의 선택된 항목들들의 value가 담긴 문자열
Sample
//아래와 같이 컴포넌트가 정의 되고 사과와 오렌지가 선택 된 경우 <xf:select id="checkbox1" appearance="full" style="position: relative;" selectedindex="-1" > <xf:choices> <xf:item> <xf:label><![CDATA[사과]]></xf:label> <xf:value><![CDATA[1]]></xf:value> </xf:item> <xf:item> <xf:label><![CDATA[체리]]></xf:label> <xf:value><![CDATA[2]]></xf:value> </xf:item> <xf:item> <xf:label><![CDATA[오렌지]]></xf:label> <xf:value><![CDATA[3]]></xf:value> </xf:item> </xf:choices> </xf:select> var returnValue = checkbox1.getValue(); //return 예시 ) "1 3"
hasClass( className )
컴포넌트가 parameter로 받은 className의 class를 가지고 있는지의 여부를 반환한다.
Parameter
nametyperequireddescription
classNameStringY검색 할 className
Return
typedescription
Booleanclass를 가지고 있는지의 여부
Sample
//아래와 같이 input 컴포넌트에 class가 정의 된 경우 <xf:input id="input1" style="position: relative;width: 144px;height: 21px;" class="tmpInputClass"></xf:input> var returnValue = input1.hasClass("tmpInputClass"); //return 예시 ) true
hide( )
컴포넌트를 화면에서 보이지 않도록 숨긴다.
엔진 내부적으로는 CSS를 display:none;과 visibility:hidden;으로 처리한다.
Sample
componentId.hide();
removeAll( )
모든 항목을 삭제한다.
Sample
checkbox1.removeAll();
removeClass( className )
컴포넌트에 className의 class를 삭제한다.
기본 설정은 addClass API를 통해 추가 된 class만 적용되며 컴포넌트의 class 속성에 직접 정의 된 class를 삭제해야하는 경우는 config.xml파일의 설정을 아래와 같이 적용해야한다.
<style><removeDefaultClass value="true" /></style>
Parameter
nametyperequireddescription
classNameStringY삭제 할 class명
Sample
//아래와 같이 input 컴포넌트에 class를 정의 한 경우 <xf:input id="input1" style="position: relative;width: 144px;height: 21px;" class="tmpInputClass"></xf:input> //config.xml 파일에 아래와 같이 정의. <style> <removeDefaultClass value="true" /> </style> //tmpInputClass class 삭제 input1.removeClass("tmpInputClass");
reset( )
모든 항목의 체크를 해제한다.
Sample
//전체 체크 해제. checkbox1.reset();
setDisabled( disabled )
컴포넌트의 disabled 속성을 설정한다. disabled 속성을 활성화 시키려면 true 비활성화 시키려면 false를 입력한다.
Parameter
nametyperequireddescription
disabledBooleanYdisabled 속성을 활성화 시키려면 true 비활성화 시키려면 false
Sample
//컴포넌트의 disabled 적용 componentId.setDisabled(true);
setEventPause( evList , flag )
컴포넌트의 이벤트를 disable 또는 enable시킨다.
Parameter
nametyperequireddescription
evListStringN대상 이벤트 목록. 해당 인자가 주어지지 않을 경우 해당 컴포넌트의 모든 사용자 이벤트가 대상이 된다. (null을 지정하면 된다.)
flagBooleanYtrue인 경우 pause시키며, false인 경우 pause를 해제한다.
Sample
input1.setEventPause("onclick", true); //onclick이벤트를 동적으로 pause 한다. input1.setEventPause("onfocus,onblur", false); //onfocus이벤트와 onblur이벤트의 pause를 해제한다. input1.setEventPause(null, true); //input에 등록된 모든 사용자 이벤트를 pause 한다.
setItemDisabled( index , falg )
index에 해당하는 항목을 비활성화시키거나 활성화 시킨다.
Parameter
nametyperequireddescription
indexNumberY항목의 index
falgBooleanY비활성화 여부
Sample
//첫번째 항목을 비활성화한다. checkbox1.setItemDisabled(0, true); //해당 항목을 선택하거나 선택을 해제할 수 없다.
setNodeSet( nodeset , label , value )
항목의 itemset 설정을 변경하는 기능으로 DataList와 연동 할 경우 nodeset 파라메터에 "data:" prefix를 꼭 붙여야한다.
Parameter
nametyperequireddescription
nodesetStringYDataList의 ID로 "data:"이라는 prefix를 붙여야한다. ( 또는 InstanceData의 XPath )
labelStringNlabel에 설정 될 column의 id로 값을 할당하지 않으면 기존에 설정된 값이 그대로 적용된다. ( 또는 label에 설정 할 nodeset 하위의 XPath )
valueStringNvalue에 설정 될 column의 id로 값을 할당하지 않으면 기존에 설정된 값이 그대로 적용된다. ( 또는 value에 설정 할 nodeset 하위의 XPath )
Sample
//아래와 같은 DataList가 정의 된 경우. <w2:dataList id="dataList1"> <w2:columnInfo> <w2:column id="lbl" dataType="text"></w2:column> <w2:column id="code" dataType="text"></w2:column> </w2:columnInfo> <w2:data use="true"> <w2:row> <lbl><![CDATA[zero]]></lbl> <code><![CDATA[0]]></code> </w2:row> <w2:row> <lbl><![CDATA[one]]></lbl> <code><![CDATA[1]]></code> </w2:row> </w2:data> </w2:dataList> //checkbox1의 itemset설정을 DataCollection의 dataList1로 변경하고 label은 lbl column으로 value는 code column으로 설정 할 경우 checkbox1.setNodeSet('data:dataList1','lbl','code'); //dataList1과 컬럼이 동일하고 실 data만 다른 dataList2로 변경 할 경우 checkbox1.setNodeSet('data:dataList2'); //기존에 할당 된 label의 lbl과 value의 code는 그대로 유지되고 dataList만 변경된다.
setOpacity( value )
컴포넌트의 CSS Opacity(불투명도)값를 설정한다.
Parameter
nametyperequireddescription
valueNumberYOpacity 값 (0과 1사이의 실수)
Sample
componentId.setOpacity(0.45);
setPosition( left , top , mode )
컴포넌트의 위치(left,top)를 설정한다.
Parameter
nametyperequireddescription
leftNumberYleft의 값 또는 null.
topNumberYtop의 값 또는 null.
modeStringN[defulat:absolute, delta]absolute이면 x,y로 현재 값을 설정하고 delta이면 현재 값에 x,y값만큼을 더해서 설정.
Sample
//컴포넌트의 top만 100px로 설정. componentId.setPosition(null, 100);
setRef( ref )
ref 속성을 설정하는 기능으로 DataCollection과 연동시 "data:"라는 prefix를 꼭 붙여야한다.
명시하지 않는 경우 InstanceData의 XPath로 인식한다.
Parameter
nametyperequireddescription
refStringY적용 할 ref의 경로
Sample
//dataMap1의 hobby key와 checkbox1 컴포넌트의 value를 binding 하는 경우 checkbox1.setRef("data:dataMap1.hobby"); //InstanceData의 res/userData/hobby 과 연동 할 경우. checkbox1.setRef("res/userData/hobby");
setSelectedIndex( index )
index에 해당하는 항목을 check/uncheck(toggle)한다.
Parameter
nametyperequireddescription
indexNumberY항목의 index
Sample
//첫번째 항목이 체크되지 않았을 경우 체크된다.( 체크 된 경우 체크해제 ) checkbox1.setSelectedIndex(0);
setSize( width , heigth )
컴포넌트의 크기(width,height)를 설정한다.
Parameter
nametyperequireddescription
widthNumberY새로 설정할 컴포넌트의 width값 또는 null
heigthNumberY새로 설정할 컴포넌트의 height값 또는 null
Sample
//컴포넌트의 height만 100px로 설정. componentId.setSize(null,100);
setStyle( propertyName , value )
컴포넌트의 property별 style을 설정한다.
Parameter
nametyperequireddescription
propertyNameStringYstyle 속성 이름
valueStringY적용 할 style의 값
Sample
//컴포넌트의 width를 200px로 설정 할 경우 componentId.setStyle("width", "200px"); //배경색을 olive로 변경 할 경우 componentId.setStyle("background-color","olive");
setUserData( key , value )
컴포넌트에 사용자 데이터를 설정한다. 컴포넌트에 설정이 가능한 key가 아닌 경우, key 설정이 불가능하며 log에 관련 내용이 출력 된다.
Parameter
nametyperequireddescription
keyStringY임의 데이터의 키
valueStringY임의 데이터의 값
Sample
//컴포넌트에 'data'라는 key로 'WebSquare'라는 값을 설정 할 경우 componentId.setUserData("data", "WebSquare"); //아래와 같이 컴포넌트에 설정이 가능한 key가 아닌 경우, key 설정이 불가능하다. componentId.setUserData("title", "WebSquare"); //log 표현 예시 ) !!!WARNING - [title] can't define as UserData
setValue( value )
파라메터로 넘어온 value가 항목에 있는 경우 해당 항목이 선택되며 해당값으로 value가 할당된다.
다건을 한번에 설정 할 경우 공백(space)를 이용하여 설정하며 value에 해당하는 항목이 없는 경우 아무 동작이 일어나지 않는다.
Parameter
nametyperequireddescription
valueStringY선택하려는 항목의 value 문자열
Sample
//아래와 같이 컴포넌트가 정의 되고 사과와 오렌지가 선택 된 경우 <xf:select id="checkbox1" appearance="full" style="position: relative;" selectedindex="-1" > <xf:choices> <xf:item> <xf:label><![CDATA[사과]]></xf:label> <xf:value><![CDATA[1]]></xf:value> </xf:item> <xf:item> <xf:label><![CDATA[체리]]></xf:label> <xf:value><![CDATA[2]]></xf:value> </xf:item> <xf:item> <xf:label><![CDATA[오렌지]]></xf:label> <xf:value><![CDATA[3]]></xf:value> </xf:item> </xf:choices> </xf:select> checkbox1.setValue("2"); //체리 항목이 check된다. checkbox1.setValue("0 2"); //사과와 오렌지 항목이 check된다.
show( displayType )
컴포넌트를 화면에 보이도록 설정한다.
엔진 내부적으로는 CSS를 display속성과 visibility:show;으로 처리한다.
Parameter
nametyperequireddescription
displayTypeStringN[default:block ,inline ,none ,""]display의 속성 값.
Sample
//display 속성이 "block"이 된다. componentId.show(); //class에 적용된 display 속성 값을 다시 복구. componentId.show("");
toggleClass( className )
컴포넌트가 className의 이름을 가진 class를 가지고 있다면 제거하고, 가지고 있지 않다면 추가한다.
기본 설정은 addClass API를 통해 추가 된 class만 삭제되며 컴포넌트의 class 속성에 직접 정의 된 class를 삭제해야하는 경우는 config.xml파일의 설정을 아래와 같이 적용해야한다.
<style><removeDefaultClass value="true" /></style>
Parameter
nametyperequireddescription
classNameStringY설정 할 className
Sample
//아래와 같이 input 컴포넌트에 class를 정의 한 경우 <xf:input id="input1" style="position: relative;width: 144px;height: 21px;" class="tmpInputClass"></xf:input> //config.xml 파일에 아래와 같이 정의. <style> <removeDefaultClass value="true" /> </style> //적용 된 tmpInputClass class 삭제 input1.toggleClass("tmpInputClass"); //tmpInputClass class를 다시 추가 input1.toggleClass("tmpInputClass");
trigger( type , array )
컴포넌트에 등록 된 특정 이벤트를 발생시킨다.
Parameter
nametyperequireddescription
typeStringY발생시킬 이벤트 이름
arrayArrayN이벤트 핸들러에 전달할 파라미터 배열
Sample
//input1 컴포넌트에 onclick이벤트를 발생시킨다. input1.trigger("onclick"); //input1에 onviewchange이벤트를 발생시키고 핸들러 함수에 (1,2) 인자를 전달하여 호출한다. input1.trigger("onviewchange", [1,2]);
unbind( type , function )
컴포넌트에 등록 된 이벤트를 제거한다.
Parameter
nametyperequireddescription
typeStringN제거할 이벤트 이름. 생략할 경우 해당 컴포넌트의 모든 이벤트를 제거한다.
functionFunctionN제거할 이벤트의 핸들러 함수. 생략할 경우 해당 이벤트 type으로 등록된 모든 핸들러 함수를 제거한다.
Sample
//input1에 등록된 모든 이벤트를 제거 input1.unbind(); //input1에 등록된 onviewchange이벤트 핸들러 함수를 모두 제거 input1.unbind("onviewchange"); //input1에 등록된 onviewchange이벤트에서 func1 이벤트 핸들러를 제거 input1.unbind("onviewchange", func1);
validate( )
컴포넌트의 정의 된 유효성에 관련 속성값을 통해 유효성 검사를 실행한다.
유효성 관련 속성 : mandatory
Return
typedescription
Boolean유효성 검사 결과 값
Sample
//모든 항목이 선택 해제되어 있는 경우 var returnValue = checkbox1.validate(); //return 예시 ) false //만약 displaymessage속성을 true로 설정하면 엔진에서 alert으로 "필수 입력 항목입니다"를 표현한다.
visible( flag )
[deprecated]show/hide 로 사용하거나 setStyle을 통해 visible 속성을 설정한다.
컴포넌트의 style 중 visibility 값을 설정한다. true이면 "visible", false이면 "hidden"을 설정.
Parameter
nametyperequireddescription
flagBooleanYvisibility 값을 설정할 값(true이면 "visible", false이면 "hidden"을 설정)