Form Bridge API for HTML5 forms form-bridge-apis-for-html-forms

CAUTION
AEM 6.4가 확장 지원이 종료되었으며 이 설명서는 더 이상 업데이트되지 않습니다. 자세한 내용은 기술 지원 기간. 지원되는 버전 찾기 여기.

Form Bridge API를 사용하여 XFA 기반 HTML5 양식과 애플리케이션 간의 통신 채널을 열 수 있습니다. 양식 브리지 API는 connect 연결을 만드는 API입니다.

다음 connect API는 핸들러를 인수로 허용합니다. XFA 기반 HTML5 양식과 양식 브리지 간에 성공적으로 연결되면 핸들이 호출됩니다.

다음 샘플 코드를 사용하여 연결을 만들 수 있습니다.

// Example showing how to connect to FormBridge
window.addEventListener("FormBridgeInitialized",
                                function(event) {
                                    var fb = event.detail.formBridge;
                                    fb.connect(function() {
                                           //use form bridge functions
                         })
                            })
NOTE
formRuntime.jsp 파일을 포함하기 전에 연결을 만들어야 합니다.

사용 가능한 양식 Bridge API  available-form-bridge-api-nbsp

getBridgeVersion()

스크립팅 라이브러리의 버전 번호 반환

  • 입력: 없음
  • 출력: 스크립팅 라이브러리의 버전 번호
  • 오류: 없음

isConnected() 양식 상태가 초기화되었는지 확인

  • 입력: 없음

  • 출력: True xfa 양식 상태가 초기화된 경우

  • 오류: 없음

connect(handler, context) FormBridge에 연결하고 연결이 초기화되고 양식 상태가 초기화된 후에 함수를 실행합니다

  • 입력:

    • 핸들러: 양식 브리지가 연결된 후 실행할 함수입니다
    • 컨텍스트: *핸들러 *함수의 컨텍스트(이)가 설정되는 개체입니다.
  • 출력: 없음

  • 오류: 없음

getDataXML(옵션) 현재 양식 데이터를 XML 형식으로 반환

  • 입력:

    • 옵션: 다음 속성을 포함하는 JavaScript 개체

      • 오류: 오류 처리기 함수
      • 성공: 성공 처리기 함수입니다. 이 함수는 XML이 포함된 개체를 데이터 속성을 사용합니다.
      • 컨텍스트: 컨텍스트(이)가 성공 함수가 설정됨
      • validationChecker: 서버에서 받은 유효성 검사 오류를 확인하기 위해 를 호출하는 함수입니다. 유효성 검사 함수가 오류 문자열의 배열을 전달합니다.
      • formState: 데이터 XML이 반환되어야 하는 XFA 양식의 JSON 상태입니다. 지정하지 않으면 현재 렌더링된 양식에 대한 데이터 XML이 반환됩니다.
  • 출력: 없음

  • 오류: 없음

registerConfig(configName, config) FormBridge에 사용자/포털별 구성을 등록합니다. 이러한 구성은 기본 구성을 덮어씁니다. 지원되는 구성은 구성 섹션에 지정됩니다.

  • 입력:

    • configName: 재정의할 구성 이름

      • widgetConfig: 사용자가 사용자 지정 위젯으로 양식의 기본 위젯을 재정의할 수 있습니다. 구성이 다음과 같이 재정의됩니다.

        formBridge.registerConfig("widgetConfig":{/*configuration*/})

      • pagingConfig: 사용자가 첫 번째 페이지만 렌더링하는 기본 동작을 무시할 수 있도록 해줍니다. 구성이 다음과 같이 재정의됩니다.

        window.formBridge.registerConfig("pagingConfig":{pagingDisabled: <true false="">, shrinkPageDisabled: <true false=""> }).

      • 로깅 구성: 사용자가 로깅 수준을 재정의하거나, 카테고리에 대한 로깅을 비활성화하거나, 로그 콘솔을 표시할지 아니면 서버로 전송할지를 지정할 수 있습니다. 구성은 다음과 같이 재정의할 수 있습니다.

      code language-css
      formBridge.registerConfig{
        "LoggerConfig" : {
      {
      "on":`<true *| *false>`,
      "category":`<array of categories>`,
      "level":`<level of categories>`, "
      type":`<"console"/"server"/"both">`
          }
        }
      
      • SubmitServiceProxyConfig: 사용자가 제출 및 로거 프록시 서비스를 등록할 수 있도록 허용합니다.

        code language-css
        window.formBridge.registerConfig("submitServiceProxyConfig",
        {
        "submitServiceProxy" : "`<submitServiceProxy>`",
        "logServiceProxy": "`<logServiceProxy>`",
        "submitUrl" : "`<submitUrl>`"
        });
        
    • 구성: 구성 값

  • 출력: 에서 구성의 원래 값을 포함하는 개체 데이터 속성을 사용합니다.

  • 오류: 없음

hideFields(fieldArray) fieldArray에 Som 표현식이 제공되는 필드를 숨깁니다. 지정된 필드의 존재 여부 속성을 보이지 않도록 설정합니다

  • 입력:

    • fieldArray: 숨길 필드에 대한 Som 표현식 배열입니다
  • 출력: 없음

  • 오류: 없음

showFields(fieldArray) fieldArray에 Som 표현식이 제공되는 필드를 표시합니다. 제공된 필드의 현재 상태 속성을 표시되도록 설정합니다.

  • 입력:

    • fieldArray: 표시할 필드에 대한 Som 표현식 배열입니다
  • 출력: 없음

  • 오류: 없음

hideSubmitButtons() 양식에서 모든 제출 단추를 숨깁니다.

  • 입력: 없음
  • 출력: 없음
  • 오류: 양식 상태가 초기화되지 않으면 예외가 발생합니다

getFormState() 양식 상태를 나타내는 JSON을 반환합니다

  • 입력: 없음

  • 출력: 에서 현재 양식 상태를 나타내는 JSON을 포함하는 개체 데이터 속성을 사용합니다.

  • 오류: 없음

restoreFormState(options) 옵션 개체의 제공된 JSON 상태에서 양식 상태를 복원합니다. 상태가 적용되며 작업이 완료된 후 성공 또는 오류 핸들러가 호출됩니다

  • 입력:

    • 옵션: 다음 속성을 포함하는 JavaScript 개체

      • 오류: 오류 처리기 함수
      • 성공: 성공 처리기 함수
      • 컨텍스트: 컨텍스트(이)가 성공 함수가 설정됨
      • formState: 양식의 JSON 상태입니다. 양식이 JSON 상태로 복원됩니다.
  • 출력: 없음

  • 오류: 없음

setFocus(som) Som 식에 지정된 필드에 포커스를 설정합니다

  • 입력: 포커스를 설정할 필드의 일부 식
  • 출력: 없음
  • 오류: 잘못된 Som 표현식의 경우 예외가 발생합니다

setFieldValue(som, value) 지정된 Som 표현식의 필드 값을 설정합니다

  • 입력:

    • 일부: 필드의 Som 표현식이 포함된 배열입니다. 필드의 값을 설정할 일부 식입니다.
    • 값: 에 제공된 Som 표현식에 해당하는 값을 포함하는 배열 som 배열입니다. 값의 데이터 형식이 fieldType과 같지 않으면 값이 수정되지 않습니다.
  • 출력: 없음

  • 오류: 잘못된 Som 표현식의 경우 Exception이 발생합니다

getFieldValue(som) 주어진 Som 표현식에 대한 필드 값을 반환합니다

  • 입력: 값을 검색해야 하는 필드의 Som 식을 포함하는 배열

  • 출력: 결과를 Array로 포함하는 개체 데이터 속성을 사용합니다.

  • 오류: 없음

getFieldValue() API의 예 example-of-nbsp-getfieldvalue-api

var a =  formBridge.getFieldValue(“xfa.form.form1.Subform1.TextField”);
if(a.errors) {
    var err;
     while((err = a.getNextMessage()) != null)
               alert(a.message)
} else {
   alert(a.data[0])
}

getFieldProperties(som, property) Som 표현식에 지정된 필드의 지정된 속성에 대한 값 목록을 검색합니다

  • 입력:

    • 일부: 필드에 대한 Som 표현식을 포함하는 배열
    • 속성: 값이 필요한 속성의 이름
  • 출력: *data *property에 결과가 배열로 포함된 개체

  • 오류: 없음

setFieldProperties(som, property, values) Som 표현식에 지정된 모든 필드에 대해 주어진 속성 값을 설정합니다

  • 입력:

    • 일부: 값을 설정해야 하는 필드의 Som 식을 포함하는 배열
    • 속성: 값을 설정해야 하는 속성
    • 값: Som 표현식에 지정된 필드의 지정된 속성 값을 포함하는 배열
  • 출력: 없음

  • 오류: 없음

양식 Bridge API의 샘플 사용 sample-usage-of-form-bridge-api

// Example 1: FormBridge.restoreFormState
  function loadFormState() {
    var suc = function(obj) {
             //success
            }
    var err = function(obj) {
           while(var t = obj.getNextMessage()) {
         $("#errorDiv").append("<div>"+t.message+"</div>");
           }
           }
        var _formState = // load form state from storage
    formBridge.restoreFormState({success:suc,error:err,formState:_formState}); // not passing a context means that this will be formBridge itself. Validation errors will be checked.
  }

//--------------------------------------------------------------------------------------------------

//Example 2: FormBridge.submitForm
  function SubmitForm() {
    var suc = function(obj) {
             var data = obj.data;
         // submit the data to a url;
            }
    var err = function(obj) {
           while(var t = obj.getNextMessage()) {
         $("#errorDiv").append("<div>"+t.message+"</div>");
           }
           }
    formBridge.submitForm({success:suc,error:err}); // not passing a context means that this will be formBridge itself. Validation errors will be checked.
  }
recommendation-more-help
a6ebf046-2b8b-4543-bd46-42a0d77792da