Ribbit.work

【Kintone】フィールドの入力制限・可否を変更する

KintoneJavaScript

last modified date2021-9-3

publish date2021-9-2

今回はkintoneにおける、アプリの各フィールドの入力可否を操作する方法を解説します。

kintone独自の仕様なので、必要な時に忘れないよう備忘として書いておきます。

また、ルックアップと関連付けたフィールドは入力不可になりますが、今回紹介する方法で手入力可能にできます。

ですが、再度ルックアップを取得したタイミングや、データの取り込みを行ったタイミングで手入力部分は消えてしまうため、その点は注意してください。

ソースコード

// レコード情報を取得
const obj = kintone.app.record.get();

// フィールドの入力可否を設定
obj.record['フィールドID'].disabled = false;

// レコード情報をセット
kintone.app.record.set(obj);

上記のコードで実装可能です。

注意点

注意する点としては、最終行のレコード情報をセットしないと設定が反映されないところでしょうか。

また、kintoneでjavascriptカスタマイズを長くされている方であればわかると思いますが、kintone.app.record.getで取得できるオブジェクトの直下に各フィールドプロパティがあるのではなく、取得したオブジェクトにrecordプロパティがあり、その中に各フィールドプロパティがあります。 そして、kintone.app.record.setの引数にするオブジェクトは、kintone.app.record.getで取得したオブジェクトの構造でなければなりません。

// レコード情報を取得
const { record } = kintone.app.record.get();

// フィールドの入力可否を設定
record['フィールドID'].disabled = false;

// レコード情報をセット
kintone.app.record.set(record); // これはエラー
kintone.app.record.set({ record }); // これはOK

また、eventから取得できるrecordオブジェクトをそのままセットしたい場合は、オブジェクトの構造を少し操作しておく必要があります。

const events = [
	'app.record.create.show',
	'app.record.edit.show'
];

// 処理をイベントに登録します
kintone.events.on(events, event => {

	// このオブジェクトはそのままセットできない
	const record = event.record;

	// オブジェクトを整形した後セット
	kintone.app.record.set({ record });
});

この記事を読んだ方におすすめの記事

特定のHTML要素のclassListを全て削除(リセット)する方法
2021-10-14

特定のHTML要素のclassListを全て削除(リセット)する方法

JavaScript
KintoneからChatworkのユーザ一覧を取得する
2021-9-15

KintoneからChatworkのユーザ一覧を取得する

JavaScriptKintone
TypeScriptで楽天ブックス書籍検索APIを使う📚
2021-9-13

TypeScriptで楽天ブックス書籍検索APIを使う📚

TypeScriptJavaScript
【kintone】Webフォントを適用する
2021-9-8

【kintone】Webフォントを適用する

KintoneJavaScript
KintoneからChatworkにメッセージを送る
2021-9-6

KintoneからChatworkにメッセージを送る

JavaScript

最新の記事

特定のHTML要素のclassListを全て削除(リセット)する方法
2021-10-14

特定のHTML要素のclassListを全て削除(リセット)する方法

JavaScript
KintoneからChatworkのユーザ一覧を取得する
2021-9-15

KintoneからChatworkのユーザ一覧を取得する

JavaScriptKintone
TypeScriptで楽天ブックス書籍検索APIを使う📚
2021-9-13

TypeScriptで楽天ブックス書籍検索APIを使う📚

TypeScriptJavaScript
【kintone】Webフォントを適用する
2021-9-8

【kintone】Webフォントを適用する

KintoneJavaScript
KintoneからChatworkにメッセージを送る
2021-9-6

KintoneからChatworkにメッセージを送る

JavaScript