alpacajs를 사용하여 HTML 양식을 렌더링하고 있습니다. 내 요구 사항은 확인란을 기반으로 특정 필드를 표시하는 것입니다. 내 양식에 세 개의 확인란이 있으며 확인란 중 하나라도 선택되어 있으면 일부 필드를 표시하려고합니다.여러 종속성에 필드를 바인딩하여 알파카의 조건을 기반으로 동일한 필드를 표시하는 방법
나는 conditional dependencies에 관한 알파카 문서를 훑어보고 내 문제에 대한 해결책을 찾지 못했습니다. 다른 필드를 사용하여 같은 필드를 만들면이 문제를 해결할 수 있지만 그 차이는 dry principle입니다.
내 코드는 다음과 같습니다.
"myCheckBox1": {
"type": "boolean"
},
"myCheckBox2": {
"type": "boolean"
},
"usernameField": {
"label": "Username *",
"order": 6,
"type": "string"
"disallowOnlyEmptySpaces": true,
"showMessages": false,
"disallowEmptySpaces": true,
}
myCheckBox1 또는 myCheckBox2 중 하나를 선택하면 usernameField를 표시하려고합니다. 조건부 종속성을 표시하도록 스키마가 변경되었습니다.
"dependencies": {
"usernameField": [
"myCheckBox1"
],
"usernameField": [
"myCheckBox2"
]
}
하지만, 그것은 myCheckBox2가 선택되어 있고 myCheckBox1을 고려하지 않는 경우에만 usernameField 표시됩니다 만 마지막으로 주어진 조건의 예를 고려한다. 또한 코드 아래 시도 :
"dependencies": {
"usernameField": [
"myCheckBox1", "myCheckBox2"
]
}
하지만은 and condition
로 평가합니다. 서로 다른 종속성을 사용하여 동일한 필드를 표시하는 방법이 있습니까?
// schema
"check": {
"title": "Select...",
"type": "string",
"enum": ["First", "Second"]
},
...
// options
"check": {
"type": "checkbox"
}
그런 다음이 같은 조건 종속성을 사용합니다 : 당신이 다음과 같이 열거 형을 사용하여 체크 박스의 그룹을 사용하지 않는 이유는
답변 해 주셔서 감사합니다. 또한 체크 된 체크 박스 아래에 텍스트 상자를 표시하는 방법이 있습니까? – cutteeth
흠 Alpaca 표준에서는 그룹화 된 확인란을 사용했기 때문에 불가능하다고 생각합니다. 그룹화 된 확인란은 하나의 필드로 간주 할 수 있습니다. 하지만 생성 된 양식을 해킹하고 postRender 함수에서 jquery를 사용하여이 작업을 수행 할 수 있습니다. – vert3x