>

유성에 익숙하지 않으며한 필드의 값이 자동 양식의 다른 필드의 값을 결정하는 양식을 만들고 싶습니다. 설정 유형을 "A", "B"및 "C"로 설정하여 "A"를 선택하면 자동 양식이로드됩니다. 이 양식을 일반 양식으로 만들었습니다. 즉 모든 A, B 및 C에 표시됩니다.

{{#each users}}
        {{> afQuickField name='userEmail' value=userEmail readOnly=true }}
        {{> afQuickField name='Setup' value=type readOnly=true}}  
        {{> afQuickField name='Profile' options='allowed' }}
        {{> afQuickField name='Purpose' }}
        {{> afQuickField name='count' options='allowed' }}
        {{> afQuickField name='PackageDirectory' options='allowed'  }}
        {{> afQuickField name="logName" options=LogName }}
 {{/each}}

카운트 옵션은 다음과 같아야합니다.
1. "A"카운트 옵션은 9,11,12 여야합니다.
2. "B"의 경우 1입니다.
3. "C"의 경우 5입니다.
스키마에서 다음과 같은 코드를 작성했습니다.

Setup:{
        type: String,
        label:"Setup",
        optional:false,
       defaultValue:type
      },
 count:{
        type: String,
        label:"No. Of count",
         optional: true,
        allowedValues:["9","11","12"],
        autoform:{
          afFieldInput:{
            firstOption:"(Select the count)"
          }
        }
  }

따라서 설정 "A"를 선택하면 3 개의 드롭 다운 옵션이 나타나고 "B"와 "C"를 클릭하면 기본값이 각각 1과 5로 표시됩니다. 누구든지 내 문제에 대한 해결책을 줄 수 있습니까?

  • 답변 # 1

    getFieldValue 를 사용할 수 있습니다  특정 필드의 값을 얻으려면 option 세트를 반환합니다.  또는 defaultValue  템플릿 도우미에서. 설명서는 여기에 있습니다.

    귀하의 코드에 따라 :

    form.html :

       ...
    {{#autoForm id="sampleFormID" ... ... }}
        {{> afQuickField name='Setup' value=type readOnly=true}}  
         {{> afQuickField name='count' options=allowedOptionHelper defaultValue=defaultValueHelper }}
        ...
    {{/autoForm}}
    
    

    form.js

    Template.templateName.helpers({
        allowedOptionsHelper: function() {
            if (AutoForm.getFieldValue('Setup', 'sampleFormID') === 'A') {
                return [{label:"9", value:"9"},{label:"11",value:"11"},{label:"12", value:"12"}];
                else
                if (AutoForm.getFieldValue('Setup', 'sampleFormID') === 'B') {
                    // return the options for B
                } else if (AutoForm.getFieldValue('Setup', 'sampleFormID') === 'C')) {
                // return the options for C
            }
        },
        defaultValueHelper: function() {
            if (AutoForm.getFieldValue('Setup', 'sampleFormID') === 'A') {
                return 11 //or whatever the defaultValue is;
            }
            //likewise for options B and C
        }
    });
    
    

    schema.js

    ...
    ...
     count:{
            type: String,
            label:"No. Of count",
             optional: true,
            autoform:{
              afFieldInput:{
                firstOption:"(Select the count)"
              }
            }
      }
    ...
    ...
    
    

관련 자료

  • 이전 Laravel - 라 라벨 - 폼 요청에서 컨트롤러로 변수 반환
  • 다음 java - 활동에서 서비스로 int 검색이 작동하지 않습니다