フォームブリッジ・新バージョンで確認画面で特定項目を非表示としたい

フォームブリッジ・新バージョンで回答画面で特定項目を非表示としたいです。

回答画面では「fb-custom–field」が動作するのですが

確認画面では「fb-custom–field」が動作せず困っています。

(サンプルコード)

①回答画面では非表示になる
formBridge.events.on(‘form.show’, function (context) {
const nameDom = document.querySelector(‘.fb-custom–field[data-field-code=“xxx”]’);
nameDom.style.display = ‘none’;
});

②確認画面では非表示にならない(ここで非表示になって欲しい)
formBridge.events.on(‘confirm.show’, function (context) {
const nameDom = document.querySelector(‘.fb-custom–field[data-field-code=“xxx”]’);
nameDom.style.display = ‘none’;
});

動作するというコードが、コードブロックとして貼り付けられていないからか、動作しませんでした。

fb-custom--が正しいが、fb-custom-になってしまっている。

formBridge.events.on('form.show', function (context) {
    const nameDom = document.querySelector('.fb-custom--field[data-field-code="文字列__1行_"]');
    nameDom.style.display = 'none';
});

ブラウザのDev toolで見た限り、確認画面ではfb-custom--fieldというクラス付与がないようです。

そもそもフォームで非表示にしておきたい要素がなぜ必要なのか?という疑問も生じます。

fb-custom--contentfb-custom--content--confirmでフォーム内容の要素をまるごと受け取るしかないようです。

苦肉の策として、一つ目の要素だと限定するならば、

 const target = document.querySelector('.fb-custom--content > :first-child > :first-child');
  if (target) {
    target.style.display = 'none';
  }
});

として非表示にすることはできました。

もし、フォーム回答者に見られてはいけないデータをフォーム上で非表示にしたところでデータはブラウザ上に転送されています。念のため。

「いいね!」 1

このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。