다음을 통해 공유


Column OnChange 이벤트(클라이언트 API 참조)

OnChange 이벤트는 다음과 같은 경우에 발생합니다.

  • 양식 열의 데이터가 변경되고 포커스가 손실됩니다. 라디오 단추 또는 확인란을 사용하도록 형식이 지정된 예/아니요 열에 적용되는 이 동작에는 예외가 있습니다. 이러한 경우 이벤트는 즉시 발생합니다.
  • 레코드를 저장한 후와 같이 폼을 새로 고칠 때 열을 업데이트하기 위해 서버의 데이터 변경 내용이 검색됩니다.
  • attribute.fireOnchange 메서드가 사용됩니다.

모든 열은 이벤트를 지원합니다 OnChange . 열의 데이터는 이벤트 전후에 유효성을 검사합니다 OnChange .

OnChange attribute.setValue 메서드를 사용하여 열을 프로그래밍 방식으로 변경하는 경우에는 이벤트가 발생하지 않습니다. 값을 설정한 후 이벤트에 대한 OnChange 이벤트 처리기를 실행하려면 코드에서 fireOnchange 메서드를 사용해야 formContext.data.entity attribute. 합니다. OnChange 사용자가 더티 폼에서 벗어나는 경우 변경 내용을 삭제할 때 열이 프로그래밍 방식으로 변경되는 경우에도 이벤트가 발생하지 않습니다.

비고

상태 열은 이벤트를 지원OnChange하지만 열은 사용자 상호 작용을 통해 이벤트가 발생할 수 없도록 폼에서 읽기 전용입니다. 또 다른 스크립트는 열에서 fireOnchange 메서드를 사용하여 이 이벤트가 발생할 수 있습니다.

비고

OnChange 이벤트는 동기적입니다. 비동기 코드의 해결에 OnChange 대해 작업을 수행하거나 처리해야 하는 이벤트 처리기에서 비동기 코드를 사용하면 됩니다. 이렇게 하면 해결 처리기에서 앱 컨텍스트가 비동기 코드가 시작되었을 때와 동일하게 유지되어야 하는 경우 문제가 발생합니다. 또한 OnChange 이벤트 처리기에서 동기 네트워크 요청을 하지 않아야 합니다. 이로 인해 응답하지 않는 앱이 발생할 수 있습니다.

이 이벤트에 지원되는 메서드

열에 대한 이벤트를 사용하는 OnChange 데 사용할 수 있는 세 가지 방법이 있습니다.

열(클라이언트 API 참조)
이벤트(클라이언트 API 참조)
모델 기반 앱의 양식 및 그리드 내 이벤트