ラジオボタンで選択された項目に応じて、チェックボックスで特定の項目への入力を制御したいということですね。
結論から言うと、kintone JavaScript APIではフィールドの編集可否を設定することはできますが、フィールドに含まれる特定の項目の編集可否を設定することはできません。
なお、ラジオボタンで選択された特定の項目に応じて、チェックボックスの特定の項目の状態(オンまたはオフ)を制御したいということであれば、村濱一樹さん投稿のとおり保存前にエラーを表示することも可能です。
以下、ラジオボタンで項目「B」、チェックボックスで項目「ウ」が選択されている場合、event.error
で画面上部にエラーを表示するサンプルコードの一部を紹介します。
const RADIOBTN_FIELD_CODE = 'ラジオボタン';
const RADIOBTN_VALUE = 'B';
const CHECKBOX_FIELD_CODE = 'チェックボックス';
const DISABLE_VALUE = 'ウ';
const submitEventValidation = (event) => {
if (event.record[RADIOBTN_FIELD_CODE].value === RADIOBTN_VALUE
&& event.record[CHECKBOX_FIELD_CODE].value.includes(DISABLE_VALUE)) {
event.error = '項目の組み合わせが正しくありません。';
return event;
}
};
上記のコードを呼び出す際のポイントは以下のとおりです。
- レコード追加画面で保存するときのイベント、 レコード編集画面でフィールドの値を変更したときのイベント、 レコード一覧画面のインライン編集で保存するときのイベントの発生時に実行するように、イベントハンドラーを登録します。
RADIOBTN_FIELD_CODE
にはラジオボタンのフィールドコード、RADIOBTN_VALUE
にはラジオボタンの項目、CHECKBOX_FIELD_CODE
にはチェックボックスフィールドのフィールドコード、DISABLE_VALUE
にはチェックボックスフィールドの項目をセットします。event.error
で画面上部にエラーを表示し、保存をキャンセルします。