いつもお世話になっております。
ある商品の配送料金アプリを作っているのですが、Aという配達店に持ちこめばいくら、Bという配達店に持ち込めばいくら、Cという配達店に持ち込めばいくらというアプリです。
ABCそれぞれの配達店の配送料を算出するスクリプトは出来ているのですが、ABCのそれぞれの配達店をラジオボタンにして、
配達店Aを選べばAの配送料計算
配達店Bを選べばBの配送料計算
配達店Cを選べばCの配送料計算
という事は可能でしょうか。
その場合、どのようなコードを書けばよろしいのでしょうか。
そもそもラジオボタンではそのような事は不可能なのでしょうか。
誠に恐れ入りますが、何かアドバイス頂けましたら幸いです。
Akio さん、こんにちは。
kintone JavaScript API のレコード追加イベントの中に、フィールド値変更時イベントが存在します。
そのため、目的の動作は実現可能だと思います。
詳細については以下のページをご覧ください。
https://developer.cybozu.io/hc/ja/articles/201941984
サンプルとして、フィールドコードが[店舗]のラジオボタンを切り替えた際に
フィールドコードが[合計]のフィールドに決められた値を入力するコードを
載せましたので、参考になれば幸いです。
(function() {
'use strict';
kintone.events.on('app.record.create.change.店舗', function(event) {
var shopName = event.changes.field.value;
var number = 0;
if (shopName === "店舗A") {
number = 1000;
} else if (shopName === "店舗B") {
number = 2000;
} else if (shopName === "店舗C") {
number = 3000;
}
event.record["合計"].value = number;
return event;
});
})();
本田様、ご親切な返答ありがとうございます。
各店舗の配送料金のスクリプトがif条件で組んであるのですが、それは例えば「店舗A」の場合だったら
if (shopName === "店舗A") {
の後に組み込めば良いのでしょうか?
ifの入れ子?となるような構文をそこに書けばいいのでしょうか。
お手数ですが、もしよろしければお知恵を拝借願えましたら幸いです。
Akio さん、こんにちは。
IF文の括弧の中で計算の処理を行えば良いと思います。
以下のようなイメージです。
if (shopName === "店舗A") {
// 店舗Aの場合の計算
} else if (shopName === "店舗B") {
// 店舗Bの場合の計算
} else if (shopName === "店舗C") {
// 店舗Cの場合の計算
}
本田様、再度のご返答ありがとうございました。
本日ご指摘通りの書法により、無事動作確認出来ました。
この度は誠にご親切な返答ありがとうございました。