on으로 eventlistener 추가 할 때 인자값 넘기는 방법
$("id/class").on(event, handler)
이런식으로 사용하면 어떤 동작(event)이 일어났을 때, 해당 선택자가 어떠한 일(handler)을 처리하는지를 넣을 수 있음.
개발할 때 HTML inline에 onclick등과 같은 걸 넣지 않기로 미리 정했음.
inline에서는
<p id="test" onclick="helloFunction('1')"> 누르세요 </p>
이런식으로 onclick을 사용했는데 얘를 안쓰자고 합의를 하고 보니 매서드의 파라미터를 넘기는 데에서 문제가 생겼음.
해결하려고 찾아보니 jQuery의 on 매서드 안에 data를 넣을 수 있다고 함
이곳에 들어가보면 on 매서드의 파라미터를 볼 수 있음!
on은
.on(events [, selector] [,data], handler))
로 구성되어 있고 data에 내 파라미터를 넘기면 완성!
예시로 들면 script 단에
$("p").on("click", {data1 : '1'}, helloFunction);
이런식으로 사용하면 되고 매서드에서 저 data1을 받으려면
function helloFunction (event) {
var test = event.data.data1;
}
이렇게 event를 매서드의 파라미터로 넣어주고
event.data.파라미터명 으로 받으면 해결!
두 개 이상의 파라미터를 넘길 때는 데이터 넣는 { } (컬리브레이스) 안에 쉼표로 구분해서 넣어주면 됨!
'자바스크립트' 카테고리의 다른 글
[JavaScript 공부 -4] JavaScript의 "use strict" (0) | 2019.01.17 |
---|---|
[JavaScript공부 -3] 코드의 구조 (0) | 2019.01.16 |
[JavaScript 공부 -2] JavaScript가 할 수 있는 일 (0) | 2019.01.03 |
[JavaScript 공부 - 1] JavaScript란? (0) | 2018.12.26 |
[JavaScript] Array.from 함수가 IE에서 작동하지 않을 때 (0) | 2018.10.24 |
댓글