FormBridgeのテーブル内の文字数制限

FormBridgeのテーブル内の複数行のフィールドに対して文字数制限をかけたいのですが
テーブル外であれば下記のJavascriptで上手く動作してくれるがテーブル内だと動作しなくなってしまう。
どう対処したらよいか教えていただきたいです。

【Javascriptコード】
(function () {
‘use strict’;
// FBが開かれた時のイベント
fb.events.form.created.push(function (state) {
// 「童話_タイトル」に「title_err_event」イベントを紐づける
state.fields.find(field => field.code === ‘童話_タイトル’).validations.push({ // ''の中にフィールドコード
params: ,
rule: ‘title_err_event’
});
return state;
});

// エラーメッセージ内容、条件設定
// ※対象フィールドが1文字でも変わったら、「validate」が常に走る
fb.addValidators = function (state) {
    // エラーメッセージ定義
    //const TITLE_ERR_MSG = "2文字以上~50文字以内で入力してください(" + state.record[fieldCode].valie.length + "文字)"
    return {
        // 「童話_タイトル」イベント
        // ※上記「rule: '●●'」と一致していれば、名称は何でもOK
        title_err_event: {
            
            // フィールド直下に表示されるエラーメッセージの設定、エラー文の後ろに現在の文字数表示
            getMessage: function (fieldCode, params) {
                return '370文字以内で入力してください(' + state.record[fieldCode].value.length + '文字)';
            },
            // エラーメッセージ表示/非表示設定
            validate: function (value, params) {
                // エラーフラグ初期化
                let ok_flg = true
                // 指定文字数に収まっていない場合はエラー
                if(value.length > 370 || 0 > value.length){
                    ok_flg = false
                }
                
                // False:エラー表示
                // True:エラー非表示                    
                return ok_flg;
            }
        }
    };
};

})();

テーブルに対応させたい場合は、

FormBridgeでテーブル内フィールドに入力制限を設けたい - kintone カスタマイズ - cybozu developer community
https://community.cybozu.dev/t/topic/9632/4

を参考にしてみてください。

新規に古い形式のformを作れないので検証していません。

また、質問者の最初の投稿がコードブロックになっていないのでコードブロックを適用してfunctionをアロー関数、テンプレートリテラル等に変更したものを参考に貼り付けておきます。

;(() => {
  'use strict'
  // FBが開かれた時のイベント
  fb.events.form.created.push((state) => {
    // 「童話_タイトル」に「title_err_event」イベントを紐づける
    state.fields
      .find((field) => field.code === '童話_タイトル')
      .validations.push({
        // ''の中にフィールドコード
        params: [],
        rule: 'title_err_event',
      })
    return state
  })

  // エラーメッセージ内容、条件設定
  // ※対象フィールドが1文字でも変わったら、「validate」が常に走る
  fb.addValidators = (state) => {
    // エラーメッセージ定義
    //const TITLE_ERR_MSG = "2文字以上~50文字以内で入力してください(" + state.record[fieldCode].valie.length + "文字)"
    return {
      // 「童話_タイトル」イベント
      // ※上記「rule: '●●'」と一致していれば、名称は何でもOK
      title_err_event: {
        // フィールド直下に表示されるエラーメッセージの設定、エラー文の後ろに現在の文字数表示
        getMessage: (fieldCode) =>
          `370文字以内で入力してください(${state.record[fieldCode].value.length}文字)`,
        // エラーメッセージ表示/非表示設定
        validate: (value) => {
          // エラーフラグ初期化
          let ok_flg = true
          // 指定文字数に収まっていない場合はエラー
          if (value.length > 370 || 0 > value.length) {
            ok_flg = false
          }

          // False:エラー表示
          // True:エラー非表示
          return ok_flg
        },
      },
    }
  }
})()

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