# ラジオボタンの値の変更によって　必須　をオンオフしたい

**URL:** https://community.cybozu.dev/t/topic/6299
**Category:** kintone 開発相談
**Created:** [2020 年 5 月 3 日午前 6:09 UTC](https://community.cybozu.dev/t/topic/6299 "2020-05-03T06:09:09Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![Legacy\_Account1419](https://avatars.discourse-cdn.com/v4/letter/l/a87d85/32.png) [@Legacy\_Account1419](https://community.cybozu.dev/u/Legacy_Account1419)
#### Post date: [2020 年 5 月 3 日午前 6:09 UTC](https://community.cybozu.dev/t/topic/6299/1 "2020-05-03T06:09:09Z")

</div>

kintoneカスタマイズ初心者です。

ラジオボタンの値の変更によって特定のフィールドをオンオフすることはできたのですが、それに伴って必須の設定 解除も同時に行いたいと考えておりますが

表示された場合に 必須にする

非表示になった場合に 必須を解除する

というのは、以下のコードに追加するとしたらどの様にしたらいいのでしょうか？

[こちら](https://community.cybozu.dev/hc/ja/community/posts/360056096831-%E3%83%A9%E3%82%B8%E3%82%AA%E3%83%9C%E3%82%BF%E3%83%B3%E3%81%AE%E5%80%A4%E3%81%A7%E7%89%B9%E5%AE%9A%E3%81%AE%E3%83%81%E3%82%A7%E3%83%83%E3%82%AF%E3%83%9C%E3%83%83%E3%82%AF%E3%82%B9%E3%82%92%E5%BF%85%E9%A0%88%E9%A0%85%E7%9B%AE%E3%81%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95?input_string=%E3%83%A9%E3%82%B8%E3%82%AA%E3%83%9C%E3%82%BF%E3%83%B3%E3%81%AE%E5%80%A4%E3%81%AE%E5%A4%89%E6%9B%B4%E3%81%AB%E3%82%88%E3%81%A3%E3%81%A6%E3%80%80%E5%BF%85%E9%A0%88%E3%80%80%E3%82%92%E3%82%AA%E3%83%B3%E3%82%AA%E3%83%95%E3%81%97%E3%81%9F%E3%81%84)

をみましたが、どうも理解できません。

アドバイスいただければ幸いです。

以下私が書いたコードです。

&nbsp;

//&nbsp;ラジオボタンの選択肢によって表示非表示を変える

(function()&nbsp;{

&nbsp;&nbsp;&nbsp;&nbsp;“use&nbsp;strict”

&nbsp;&nbsp;&nbsp;&nbsp;kintone.events.on([

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;‘app.record.create.show’,

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;‘app.record.create.change.ラジオボタン’,

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;‘app.record.detail.show’,&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;‘app.record.edit.show’,

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;‘app.record.edit.change.ラジオボタン’&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;],function(event){

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const&nbsp;record&nbsp;=&nbsp;event.record;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(record[‘ラジオボタン’][‘value’]&nbsp;===&nbsp;‘その他’){

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//trueの場合の処理その他のフィールドを表示する

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;kintone.app.record.setFieldShown(fieldCode,&nbsp;true);

//ここに書くコードが知りたい

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;{

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//falseの場合の処理その他のフィールドを表示する

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;kintone.app.record.setFieldShown(fieldCode,&nbsp;false);

&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; //ここに書くコードが知りたい

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}

&nbsp;&nbsp;&nbsp;&nbsp;})

})();

---

<div class="post-metadata">

### Author: ![Legacy\_Account1821](https://avatars.discourse-cdn.com/v4/letter/l/d07c76/32.png) [@Legacy\_Account1821](https://community.cybozu.dev/u/Legacy_Account1821)
#### Post date: [2020 年 5 月 3 日午前 10:57 UTC](https://community.cybozu.dev/t/topic/6299/2 "2020-05-03T10:57:22Z")

</div>

峯山さん、こんにちは。プロジェクト・アスノートの松田です。

必須チェックは、レコードの保存前イベントでラジオボタンの値を判定して、必須チェックしたいフィールドの値を見て、必要に応じてエラーを出して保存をキャンセルする、というふうに考えたらいいと思います。

---

<div class="post-metadata">

### Author: ![Legacy\_Account1419](https://avatars.discourse-cdn.com/v4/letter/l/a87d85/32.png) [@Legacy\_Account1419](https://community.cybozu.dev/u/Legacy_Account1419)
#### Post date: [2020 年 5 月 4 日午前 12:13 UTC](https://community.cybozu.dev/t/topic/6299/3 "2020-05-04T00:13:20Z")

</div>

返信ありがとうございます。

保存前イベントですか。

なるほどです。

調べてみます。

先日の動画とても参考になりました。

今後のドリルも楽しみにしています。

---

<div class="post-metadata">

### Author: ![Legacy\_Account1419](https://avatars.discourse-cdn.com/v4/letter/l/a87d85/32.png) [@Legacy\_Account1419](https://community.cybozu.dev/u/Legacy_Account1419)
#### Post date: [2020 年 5 月 7 日午前 7:54 UTC](https://community.cybozu.dev/t/topic/6299/4 "2020-05-07T07:54:08Z")

</div>

このように、ifを入れ子にしたらできました。複数条件を設定する場合は、and演算子などをどの様に使うとよりスマートに実装できるかしりたいのですが？

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

&nbsp;

(function()&nbsp;{

&nbsp;&nbsp;&nbsp;&nbsp;“use&nbsp;strict”

&nbsp;&nbsp;&nbsp;&nbsp;kintone.events.on([

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;‘app.record.create.submit’,

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;‘app.record.edit.submit’

&nbsp;&nbsp;&nbsp;&nbsp;],function(event){

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const&nbsp;record&nbsp;=&nbsp;event.record;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(record[‘ラジオボタン’][‘value’]&nbsp;===&nbsp;‘その他’){

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//trueの場合の処理その他のフィールドを表示する

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(record[‘フィールドコード’][‘value’]&nbsp;===&nbsp;undefined){

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;event.error&nbsp;=&nbsp;‘記入して下さい。’;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;event;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}

&nbsp;&nbsp;&nbsp;&nbsp;})

})();

---

<div class="post-metadata">

### Author: ![Legacy\_Account1821](https://avatars.discourse-cdn.com/v4/letter/l/d07c76/32.png) [@Legacy\_Account1821](https://community.cybozu.dev/u/Legacy_Account1821)
#### Post date: [2020 年 5 月 7 日午前 8:08 UTC](https://community.cybozu.dev/t/topic/6299/5 "2020-05-07T08:08:21Z")

</div>

峯山さん、こんにちは。

複数条件の論理演算子として、「&&」が使えますので調べてみてください。

if (A && B) { 処理 } という形です。

[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Operators/Logical\_Operators](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Operators/Logical_Operators)&nbsp;

---

<div class="post-metadata">

### Author: ![Legacy\_Account1419](https://avatars.discourse-cdn.com/v4/letter/l/a87d85/32.png) [@Legacy\_Account1419](https://community.cybozu.dev/u/Legacy_Account1419)
#### Post date: [2020 年 5 月 7 日午前 8:25 UTC](https://community.cybozu.dev/t/topic/6299/6 "2020-05-07T08:25:04Z")

</div>

できました。

ありがとうございます。

これで色々なことに汎用できそうです。ありがとうございます。
