KnockoutJS에서 제출 핸들러의 이벤트 객체에 대한 액세스 권한 얻기

과즙

ViewModel의 submitForm메서드를 form다음과 같이 요소에 바인딩했습니다 .

<form action="#" method="post" data-bind="submit: submitForm">

내 ViewModel은 다음과 같습니다.

function ViewModel() {
    this.submitForm = function (data, event) {
        console.log(event); //undefined
    };
}

ko.applyBindings(new ViewModel());

내 양식을 제출하면, 위의 핸들러는 발사되지만 event입니다 undefined. 위의 코드 는 다음과 같은 문서기반으로합니다 .

참고 2 : 이벤트 객체에 액세스하거나 더 많은 매개 변수 전달

일부 시나리오에서는 클릭 이벤트와 관련된 DOM 이벤트 개체에 액세스해야 할 수 있습니다. Knockout은 다음 예제와 같이 이벤트를 함수에 두 번째 매개 변수로 전달합니다.

<button data-bind="click: myFunction">
    Click me
</button>

<script type="text/javascript">
    var viewModel = {
        myFunction: function(data, event) {
            if (event.shiftKey) {
                //do something different when user has shift key down
            } else {
                //do normal action
            }
        }
    );
    ko.applyBindings(viewModel);
</script>

참고 : 위의 구문 오류는 KnockoutJS 예제에서 그대로 복사되었습니다. 나는 그것이 실수라고 생각하고 명백한 수정으로 인해 코드가 문서화 된대로 작동해야한다고 가정합니다.

이 코드 샘플과 문서의 인용문은 내가 말할 수있는 한 위에서 작성한 내용을 모방 한 것입니다. 그러나 이 jsFiddle에서 볼 수 있듯이 , event이다 undefined.

질문

  • event제출 처리기 개체에 액세스하려면 어떻게 해야합니까?

내가 click바인딩 문서를 참조한 이유를 궁금해하는 사람들을 위해 다음과 같은 submit바인딩 문서 에서 지시를 받았습니다 .

제출 핸들러 함수에 추가 매개 변수를 전달하는 방법 또는보기 모델에없는 함수를 호출 할 때 this 핸들을 제어하는 ​​방법에 대한 정보는 클릭 바인딩과 관련된 참고 사항을 참조하십시오. 해당 페이지의 모든 참고 사항은 제출 핸들러에도 적용됩니다.

Nemesv

현재 구현에서 당신이 할 수없는 얻가 event귀하의 내부 객체 submit바인딩 핸들러를.

그러나 event바인딩을 사용 하고 submit이벤트를 수동으로 구독 할 수 있습니다 .

<form method="post" action="#" data-bind="event: {'submit': submitForm}">
    <input type="submit"/>
</form>

데모 JSFiddle .

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

getJSON 객체 값에 대한 액세스 권한 얻기

분류에서Dev

StorageFile-LocalStorage 외부의 이미지에 대한 액세스 권한 얻기

분류에서Dev

Jasmine으로 객체에 대한 이벤트 핸들러 테스트

분류에서Dev

내부 하드 드라이브의 Windows 파티션에 대한 읽기 쓰기 액세스 권한 얻기

분류에서Dev

sqlplus에 대한 액세스 권한을 얻는 문제

분류에서Dev

보기에 대한 액세스 권한 부여 (기본 테이블 제외)

분류에서Dev

여러 이벤트에 대해 동일한 이벤트 핸들러 호출

분류에서Dev

여러 크레딧 캘린더에 대한 액세스 권한 얻기

분류에서Dev

여러 핸들러에 대한 하나의 이벤트-Laravel

분류에서Dev

GCP에서 AI Platform R 3.6 노트북 인스턴스의 라이브러리 폴더에 대한 쓰기 액세스 권한을 얻는 방법

분류에서Dev

JavaScript의 하위 객체에서 이에 대한 액세스

분류에서Dev

Django DetailView는 액세스를 제한하기 위해 M2M 필드의 사용자에 대한 액세스 권한을 얻습니까?

분류에서Dev

Angular : 투영 된 FormGroup에 대한 액세스 권한 얻기

분류에서Dev

Global.asax 속성에 대한 액세스 권한 얻기

분류에서Dev

Custom ModelValidatorProvider-containertype 속성에 대한 액세스 권한 얻기

분류에서Dev

InfiniteCalendar의 onSelect에 대한 이벤트 핸들러

분류에서Dev

특정 div의 요소에 대한 onclick 이벤트 핸들러

분류에서Dev

Swift 3의 DispatchSource에 대한 GCD 함수 이벤트 핸들러?

분류에서Dev

Windows에서 스레드 핸들에 대한 액세스 권한 THREAD_QUERY_INFORMATION을 얻는 방법

분류에서Dev

Ubuntu 서버 16.04-/ var / www /에 대한 전체 FTP 액세스 권한 얻기

분류에서Dev

Java-ArrayList-객체 필드에 대한 액세스 얻기

분류에서Dev

객체 속성을 업데이트하기 위해 React의 Object.keys (). map에 대한 onChange 핸들러

분류에서Dev

이벤트 핸들러에서 대기

분류에서Dev

Javascript 객체는 속성에 대한 액세스 권한이 없습니다.

분류에서Dev

Meteor 템플릿에 특정한 함수를 만들고 이벤트 핸들러로 액세스 가능

분류에서Dev

서버의 이미지에 대한 액세스 제한 : php, htaccess 또는 기타?

분류에서Dev

"keyup"이벤트 및 "keydown"이 동일한 이벤트 핸들러에 의해 호출 됨

분류에서Dev

Sandbox에서 / User / Library / Container / <identifier>에 대한 액세스 권한 얻기

분류에서Dev

React에서 맵에 대한 객체 배열의 데이터에 액세스

Related 관련 기사

  1. 1

    getJSON 객체 값에 대한 액세스 권한 얻기

  2. 2

    StorageFile-LocalStorage 외부의 이미지에 대한 액세스 권한 얻기

  3. 3

    Jasmine으로 객체에 대한 이벤트 핸들러 테스트

  4. 4

    내부 하드 드라이브의 Windows 파티션에 대한 읽기 쓰기 액세스 권한 얻기

  5. 5

    sqlplus에 대한 액세스 권한을 얻는 문제

  6. 6

    보기에 대한 액세스 권한 부여 (기본 테이블 제외)

  7. 7

    여러 이벤트에 대해 동일한 이벤트 핸들러 호출

  8. 8

    여러 크레딧 캘린더에 대한 액세스 권한 얻기

  9. 9

    여러 핸들러에 대한 하나의 이벤트-Laravel

  10. 10

    GCP에서 AI Platform R 3.6 노트북 인스턴스의 라이브러리 폴더에 대한 쓰기 액세스 권한을 얻는 방법

  11. 11

    JavaScript의 하위 객체에서 이에 대한 액세스

  12. 12

    Django DetailView는 액세스를 제한하기 위해 M2M 필드의 사용자에 대한 액세스 권한을 얻습니까?

  13. 13

    Angular : 투영 된 FormGroup에 대한 액세스 권한 얻기

  14. 14

    Global.asax 속성에 대한 액세스 권한 얻기

  15. 15

    Custom ModelValidatorProvider-containertype 속성에 대한 액세스 권한 얻기

  16. 16

    InfiniteCalendar의 onSelect에 대한 이벤트 핸들러

  17. 17

    특정 div의 요소에 대한 onclick 이벤트 핸들러

  18. 18

    Swift 3의 DispatchSource에 대한 GCD 함수 이벤트 핸들러?

  19. 19

    Windows에서 스레드 핸들에 대한 액세스 권한 THREAD_QUERY_INFORMATION을 얻는 방법

  20. 20

    Ubuntu 서버 16.04-/ var / www /에 대한 전체 FTP 액세스 권한 얻기

  21. 21

    Java-ArrayList-객체 필드에 대한 액세스 얻기

  22. 22

    객체 속성을 업데이트하기 위해 React의 Object.keys (). map에 대한 onChange 핸들러

  23. 23

    이벤트 핸들러에서 대기

  24. 24

    Javascript 객체는 속성에 대한 액세스 권한이 없습니다.

  25. 25

    Meteor 템플릿에 특정한 함수를 만들고 이벤트 핸들러로 액세스 가능

  26. 26

    서버의 이미지에 대한 액세스 제한 : php, htaccess 또는 기타?

  27. 27

    "keyup"이벤트 및 "keydown"이 동일한 이벤트 핸들러에 의해 호출 됨

  28. 28

    Sandbox에서 / User / Library / Container / <identifier>에 대한 액세스 권한 얻기

  29. 29

    React에서 맵에 대한 객체 배열의 데이터에 액세스

뜨겁다태그

보관