キャンセルボタンが効かない

いつもお世話になっております。

関連レコードの参照先アプリに簡単レコード登録 を参照にしておりますが、

キャンセルボタンが効かなくて、

キャンセルボタンが効かなくなるで解決されていますが、まだまだ初心者のため、コードの追加をしたんですが、全然動かなく状態です。

アドバイス頂けるようお願い致します。

(function() {
“use strict”;
kintone.events.on(‘app.record.detail.show’, function(event) {
var field_check = event.record.company.value;
//元アプリの引継ぎ対象フィールドでの入力を確認
if (!field_check) {
return;
}
var mySpaceFieldButton = kintone.app.record.getSpaceElement(‘jump_button’);
//ボタンを設置
var $button = $(‘<button title=“案件情報アプリに追加する” class=“kintoneplugin-button-normal”>追加登録</button>’);
$button.click(function() {
//関連レコードのアプリIDの取得
var related = kintone.app.getRelatedRecordsTargetAppId(‘relation’);
//関連レコードの新規作成画面のURLへのジャンプ
var new_window = window.open(“/k/” + related + “/edit”);
new_window.addEventListener(“load”, function() {
window.postMessage(new_window.kintone !== null, location.origin);
});
window.addEventListener(“message”, (function() {
return function field_set() {
//新規レコード側のフィールドを指定してsetする
var new_app = new_window.kintone;
var new_record = new_app.app.record.get();
new_record.record.company.value = field_check;
//ここから新規で開いたkintone画面でルックアップ先の更新処理を行う
new_record.record.company.lookup = true;
new_app.app.record.set(new_record);
window.removeEventListener(“message”, field_set, false);
};
})(), false);
return function field_set() {
var cancel1 = new_window.document.getElementsByClassName(‘gaia-ui-actionmenu-cancel’);
cancel1[0].addEventListener(‘click’, function() {
new_window.close();
}, false);
};
});
$(mySpaceFieldButton).append($button);
});
})();

 

goroさん
cstapの瀧ヶ平です。

(function() {
  "use strict";
  kintone.events.on('app.record.detail.show', function(event) {
    var field_check = event.record.company.value;
    //元アプリの引継ぎ対象フィールドでの入力を確認
    if (!field_check) {
      return;
    }
    var mySpaceFieldButton = kintone.app.record.getSpaceElement('jump_button');
    //ボタンを設置
    var $button = $('<button title="案件情報アプリに追加する" class="kintoneplugin-button-normal">追加登録</button>');
    $button.click(function() {
      //関連レコードのアプリIDの取得
      var related = kintone.app.getRelatedRecordsTargetAppId('relation');
      //関連レコードの新規作成画面のURLへのジャンプ
      var new_window = window.open("/k/" + related + "/edit");
      new_window.addEventListener("load", function() {
        window.postMessage(new_window.kintone !== null, location.origin);
      });
      window.addEventListener("message", (function() {
        return function field_set() {
          //新規レコード側のフィールドを指定してsetする
          var new_app = new_window.kintone;
          var new_record = new_app.app.record.get();
          new_record.record.company.value = field_check;
          //ここから新規で開いたkintone画面でルックアップ先の更新処理を行う
          new_record.record.company.lookup = true;
          new_app.app.record.set(new_record);
          window.removeEventListener("message", field_set, false);
          var cancel1 = new_window.document.getElementsByClassName('gaia-ui-actionmenu-cancel');
          cancel1[0].addEventListener('click', function() {
            new_window.close();
          }, false);
        };
      })(), false);
    });
    $(mySpaceFieldButton).append($button);
  });
})();

のように修正すれば良いのではないでしょうか
今のコードではウィンドウを閉じる処理が書かれた関数が実行されていないので、処理自体を最初のfield_set関数の中に入れてあげる必要がありそうです

瀧ヶ平様

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

アドバイスいただき、ありがとうございます。

とても助かりました。