文字フィールドが空白時の指定フィールドの表示・非表示切替

こんにちは。

首記の件ですが、

チェックボックスやラジオボタンでは実装できたのですが

文字フィールドが空白の場合、指定のフィールドを表示・非表示を同じく

切替えることは可能でしょうか?

 

よろしくお願いいたします。

青山さん

文字フィールドが空白の場合

指定のフィールドの表示・非表示

上記二つを作成画面でやるか、詳細画面でやるかで処理が変わってきますので、どの画面でやるか教えていただけますか?

しぶい様

ご連絡ありがとうございます。

レコード詳細の閲覧時、編集時、追加時で考えております。

よろしくお願いいたします。

 

追記、ラジオボタンの場合こういうイメージです。

ラジオボタンのところが文字フィールドにして空白の場合表示を消すといった

感じで考えています。

var eventsSubmit = [‘app.record.detail.show’,
‘app.record.create.show’,
‘app.record.edit.show’,
‘app.record.create.change.ラジオボタン’,
‘app.record.edit.change.ラジオボタン’];
kintone.events.on(eventsSubmit, function(e) {
var record = e.record;
var radioButtonValue = record.ラジオボタン.value;

switch (radioButtonValue) {
case “あり”:
kintone.app.record.setFieldShown(“文字列1”, true);
kintone.app.record.setFieldShown(“文字列2”, false);
break;

青山昌司さん

ラジオボタンでの実装方法ありがとうございます。

ラジオボタンと似たような方法で、文字列フィールドでも可能だと思います。

ただフィールドの空白を判定するのだったら、このページの方法が楽かもしれませんね。

具体的にはこんな感じで

// 空白だったら
if(!event.record.str.value) {

}

空白以外は else でつなげれば、いいので

あと、一つ注意点として、文字列にも change イベント適用するのであれば、

イベントが発生するタイミングは文字列からフォーカスが外れるタイミングです。

書き込んだり、中身を消したりのタイミングではないので、そこだけは気を付けてください。

しぶい様

ご連絡ありがとうございます。

確認してみたいと思います。

取り急ぎお礼まで。

しぶい様

お世話になっております。

下記の認識でよろしいでしょうか?

ご教授いただければ幸いです。

よろしくお願いいたします。

 

kintone.events.on(eventsSubmit, function(e) {
var record = e.record;
if(!event.record.文字列1.value) {
kintone.app.record.setFieldShown(‘グループ’,true);
kintone.app.record.setFieldShown(‘グループ2’,false);
}else{
kintone.app.record.setFieldShown(‘グループ’,false);
kintone.app.record.setFieldShown(‘グループ2’,true);

青山昌司さん

グループが可能かどうかは確認してなかったですが、ドキュメントを見た感じそれで大丈夫だと思いますが、

想定の動作しましたでしょうか?

エラーが出てた場合は、そのエラーの詳細をお願いします。

しぶい様

 

エラー内容ですが、下記のエラーが出ます。

青山昌司さん

先ほどぱっと見てしまったので、気づかなかったのですが、if分の中身を、event ではなく

e に変更してみてください。

青山昌司さんのコードの場合、event オブジェクトを e という変数に渡してるので、レコードの中身を参照する場合

e.record.文字列1.value

みたいな感じで記述します。

しぶい様

お世話になっております。

ご指摘の箇所変更で動作をいたしました。^^

おかげさまでまた一つ知識が広がりました。

ありがとうございました。