code

동일한 onclick에서 두 함수 호출

codestyles 2020. 8. 17. 08:58
반응형

동일한 onclick에서 두 함수 호출


HTML 및 JS

하나의 onclick 이벤트에서 2 개의 함수를 어떻게 호출합니까? 내 코드는 다음과 같습니다.

 <input id ="btn" type="button" value="click" onclick="pay() cls()"/>

두 함수는 pay ()와 cls ()입니다. 감사!


;둘 다 작동하려면 함수 호출 끝에 세미콜론 추가하십시오 .

 <input id="btn" type="button" value="click" onclick="pay(); cls();"/>

나는 마지막 것이 필요 하다고 생각하지 않지만 좋은 측정을 위해 그것을 추가하는 것이 좋습니다.

다음은 SitePoint http://reference.sitepoint.com/html/event-attributes/onclick 의 좋은 참조입니다.


둘 다 호출하는 단일 함수를 만든 다음 이벤트에서 사용할 수 있습니다.

function myFunction(){
    pay();
    cls();
}

그런 다음 버튼의 경우 :

<input id="btn" type="button" value="click" onclick="myFunction();"/>

다른 함수 내부에서 함수를 호출 할 수 있습니다.

<input id ="btn" type="button" value="click" onclick="todo()"/>

function todo(){
pay(); cls();
}

jQuery 사용 :

jQuery("#btn").on("click",function(event){
    event.preventDefault();
    pay();
    cls();
});

html에서 이벤트를 바인딩하는 것은 권장되지 않습니다. 이것은 권장되는 방법입니다.

document.getElementById('btn').addEventListener('click', function(){
    pay();
    cls();
});

다양성을 제공하기 위해 쉼표 연산자도 사용할 수 있지만 일부는 "noooooo!"라고 말할 수 있지만 작동합니다.

<input type="button" onclick="one(), two(), three(), four()"/>

http://jsbin.com/oqizir/1/edit


onclick="pay(); cls();"

그러나 "pay"함수에서 return 문을 사용하는 경우 실행이 중지되고 "cls"가 실행되지 않습니다.

이에 대한 해결 방법 :

onclick="var temp = function1();function2(); return temp;"

문 종결 자로 두 함수 사이에 세미콜론을 넣습니다.


이 시도

<input id ="btn" type="button" value="click" onclick="pay();cls()"/>

참고 URL : https://stackoverflow.com/questions/16025138/call-two-functions-from-same-onclick

반응형