郵便番号の取得・反映について

皆様お疲れ様です。新卒で開発現場が初めてのものです。皆様のアドバイスをお聞きできればと思います。何卒ご協力よろしくお願い申し上げます。

 

住所検索ボタンを作成して郵便番号を取得し、所在地住所に反映させたいのですがうまくいきません。

エラーを見る限りaddcheckに問題があるのですが、addcheckに

address_result[“record”][“所在地郵便番号”].valueの値で郵便番号を取得し、住所に変換したものが入れれば解決できるかもしれませんがいまいちよくわかりません。

 

どなたかアドバイスなどをよろしくお願いいたします。

 

//郵便番号を取得

    kintone.events.on([‘app.record.create.show’, ‘app.record.edit.show’], function (event) {

        // スペースフィールドに郵便番号検索ボタン配置

        var mySpaceFieldButtonAdd = document.createElement(‘button’);

        console.log(“ボタン生成”);

        mySpaceFieldButtonAdd.id = ‘my_space_field_button_address’;

        console.log(“ID生成”);

        $(mySpaceFieldButtonAdd).addClass(‘kintoneplugin-button-normal’);

        mySpaceFieldButtonAdd.innerText = ‘住所検索’;

        console.log(mySpaceFieldButtonAdd);

        mySpaceFieldButtonAdd.style.marginTop = “30px”;

        kintone.app.record.getSpaceElement(‘Kensaku1’).appendChild(mySpaceFieldButtonAdd);

        //ボタンを押したとき

        mySpaceFieldButtonAdd.onclick = function () {

            let address_result = kintone.app.record.get();

            let liteCheck = false;  //下のif文でエラーを行うために設定

            console.log(address_result[“record”][“所在地郵便番号”].value);

            console.log(address_result[“record”][“所在地郵便番号”].value.length);

           

            if (address_result[“record”][“所在地郵便番号”].value.length < 7 || address_result[“record”][“所在地郵便番号”].value.length > 7) {

                console.log(“文字の長さ問題あり”);

                address_result[“record”][“所在地郵便番号”].error = ‘7文字の郵便番号を入力してください’;

                liteCheck = true;

            };

            if (addCheck) {

                address_result[“record”][“所在地住所1”][“value”] = addCheck;

                kintone.app.record.set(address_result);

            } else {

                address_result[“record”][“所在地住所1”][“value”] = null;  // null → 郵便番号が正しいもの(存在しない)でなかった場合

                kintone.app.record.set(address_result);

                if (!liteCheck) {

                    address_result[“record”][“所在地住所1”].error = ‘郵便番号が間違っています。’;

                }

            }

        };

        return event;

    });

            if (addCheck) {
                address_result["record"]["所在地住所1"]["value"] = addCheck;

addCheckに値があることが期待されていますが、貼り付けた部分にはそれらしい記述はありませんでした。

liteCheckの書き間違いかと思いましたがelseの中にあり違う使い方なのかもしれません。

                address_result["record"]["所在地住所1"]["value"] = addCheck;

addCheckを代入しようとしているのも気になります。

haradaさん

ご回答ありがとうございます。

addCheckに問題があることはわかりました。所在地郵便番号に郵便番号を住所に変換したものを入れることができれば解決すると思うので色々と試してみます。

貴重なご意見ありがとうございました。

 

このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。