kintone의 라벨 필드 요소를 가져옵니다.

소개



요 전날 이런 기사를 썼습니다.
kintone의 내부 파라미터 "필드 ID"를 다루는

입력하는 필드는 이것으로 전부 갈 수 있습니다만,
「라벨 필드」의 DOM을 취득하고 싶을 때는, 이것도 무리.
분명히 라벨에는 필드 ID가 원래 부여되지 않는 것 같습니다.

해결 방법



100% DOM 조작으로 실시합니다.
예와 같이 앞으로 움직이지 않을 가능성은 크므로 자기책임으로.
div 태그가 다중화되어 있습니다만, .control-label-field-gaia 클래스가 라벨 1개 단위의 대원인 것 같습니다.
jQuery를 사용하지 않고 작성하는 경우 다음 두 단계로.
  • 모든 라벨 얻기
  • 그 중에서 특정 캐릭터 라인의 라벨을 찾는다

  • 이런 식으로 용도별로 함수를 만들어 주면 처리하기 쉽다고 생각합니다.
    // 全ラベルの取得
    const allLabelElements = () => Object.values(document.querySelectorAll('div.control-label-field-gaia'))
    
    // 特定の文字列と一致するラベルを1つ抽出
    const findLabelElement = label => allLabelElements().find(_ => _.textContent === label)
    
    // 特定の文字列を含むラベルを複数抽出
    const filterLabelElements = label => allLabelElements().filter(_ => _.textContent.includes(label))
    

    사용 예



    앱 스토어의 '여비 정산 신청'의 경우

    여행비와 일치하는 라벨



    일치하는 Element 객체가 반환됩니다.



    '여행비'가 포함된 라벨



    일치하는 3개의 Element가 배열로 반환
  • 「여비 정산 신청」에 매치
  • 「여비」에 매치
  • 「여비 합계(엔)」에 매치

  • 나중에 좋아하는 것처럼 hack하십시오!
    그럼 또 ~.

    좋은 웹페이지 즐겨찾기