何を実現したいのかを書きましょう
Javascript初心者です。
カテゴリーをクリックした時のイベントで処理を実行したいのですが、
カテゴリーがクリックされるというイベントの記述方法が分かりません。
発生した問題やエラーメッセージを具体的に書きましょう
具体的なエラーメッセージはありません。
記述方法について教えてください。
実行したコードをコピー&ペーストしましょう
(() =>{
"use strict";
kintone.events.on(['app.record.edit.show','app.record.create.show'],event => {
const category = cybozu.data.page.CATEGORY_DATA.categories;
select = document.queryselector('[name=categories]');
select.onchange = event => {
console.log(select.selectedIndex);
}
return event;
});
})();
akika
(qiuxiang)
2
次のイベントを使うとは、レコード編集・新規登録画面でカテゴリの値が変更された時に何か処理を実装したいでしょうか?
['app.record.edit.show','app.record.create.show']
この場合であれば、残念ながらカテゴリのchangeイベントがないため、値を変える時にイベントを登録することができないと思います。
レコードの一覧画面で、次のようにカテゴリ要素を取得して、forEach()などを使って取得した要素を一つずつクリックイベントを登録することができます。
const categorys = cybozu.data.page.CATEGORY_DATA.categories;
ただ、cybozu.data.page.CATEGORY_DATA.categories;は公式で外部に公開されていないもので、予期せずに変更される可能性があります。
また、cybozu developer networkに公開されているコーデイングガイドラインにも次のような記載があります。
既存のグローバルオブジェクトの追加や書き換え、参照はしない
ご提示のコードの話ですが、
categoryは宣言されているが、使用されていません。
document.queryselector('[name=categories]');
と書いてありますが、name=categoriesという要素は画面にないはずです。
JavaScriptの基礎知識については、次のチュートリアルをご参考ください。
system
(system)
クローズされました:
4
このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。