# フィールド要素の取得に失敗する

**URL:** <https://community.cybozu.dev/t/topic/9965>\
**Category:** kintone 開発相談\
**Created:** [2025 年 1 月 15 日午前 1:35 UTC](https://community.cybozu.dev/t/topic/9965 "2025-01-15T01:35:11Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![aoyama](https://avatars.discourse-cdn.com/v4/letter/a/aca169/32.png) [@aoyama](https://community.cybozu.dev/u/aoyama)\
**Post date:** [2025 年 1 月 15 日午前 1:35 UTC](https://community.cybozu.dev/t/topic/9965/1 "2025-01-15T01:35:11Z")

</div>

kintone.app.record.getFieldElement(fieldCode)を使ってフィールドの色を変えようと思いますが、思うように動作しません。

> **[フィールド要素を取得する](https://cybozu.dev/ja/kintone/docs/js-api/record/get-record-field-element/#notes)**
>
> フィールドコードを指定して、現在開いているレコード内のフィールド要素を取得します。

現在、手詰まりの状態のためアプリを新しく作り、他JS、プラグインが影響しない環境で確認をしています。

アプリには「てすと」というフィールドコード（テキスト）のみ設置しています

```javascript
kintone.events.on('app.record.edit.show', function(event) {

  // 遅延してフィールド要素を取得
  setTimeout(function () {
    var fieldElement = kintone.app.record.getFieldElement("てすと");
    if (fieldElement) {
      console.log("フィールド要素を取得しました:", fieldElement);

      // スタイル変更例
      fieldElement.style.border = "2px solid red";
      fieldElement.style.backgroundColor = "#ffcccc";
    } else {
      console.error("フィールド要素が見つかりませんでした。");
    }
  }, 200); // 遅延時間を調整

  return event;
});

```

これを実行すると「フィールド要素が見つかりませんでした。」のエラーとなります。

 ![image](https://us1.discourse-cdn.com/flex015/uploads/cybozu/original/2X/0/05ae98ba9cb5b72d8fa816459990c850147f085b.png)

以下の通りIDで取得しようとするとできるのですがなにか理由がありますでしょうか？

```javascript
kintone.events.on('app.record.edit.show', function(event) {
  setTimeout(function() {
    // フィールド要素を id で取得
    var fieldElement = document.getElementById('7_5760979-:24-text');
    if (fieldElement) {
      console.log("フィールド要素を取得しました:", fieldElement);

      // スタイル変更例
      fieldElement.style.border = "2px solid red";
      fieldElement.style.backgroundColor = "#ffcccc";
    } else {
      console.error("フィールド要素が見つかりませんでした。");
    }
  }, 500); // 必要に応じて遅延時間を調整

  return event;
});

```

 ![image](https://us1.discourse-cdn.com/flex015/uploads/cybozu/original/2X/b/b8f0e4e12eb1fcc8d07969fdba8fd681d6c26c45.png)

---

<div class="post-metadata">

**Author:** ![aaa](https://sea1.discourse-cdn.com/flex015/user_avatar/community.cybozu.dev/aaa/32/277_2.png) [@aaa](https://community.cybozu.dev/u/aaa)\
**Post date:** [2025 年 1 月 15 日午前 1:47 UTC](https://community.cybozu.dev/t/topic/9965/2 "2025-01-15T01:47:52Z")

</div>

[https://cybozu.dev/ja/id/8a380badcc82a4b82b89fdd1/#available-pages](https://cybozu.dev/ja/id/8a380badcc82a4b82b89fdd1/#available-pages)  
「利用できる画面」に「編集」画面は含まれていないようです。

---

<div class="post-metadata">

**Author:** ![aoyama](https://avatars.discourse-cdn.com/v4/letter/a/aca169/32.png) [@aoyama](https://community.cybozu.dev/u/aoyama)\
**Post date:** [2025 年 1 月 15 日午前 2:21 UTC](https://community.cybozu.dev/t/topic/9965/3 "2025-01-15T02:21:13Z")

</div>

なるほど。レコード詳細画面からの編集だったので詳細画面でよいと考えていました。

利用できる画面というくくりの中に「レコード編集画面」という表現が  
別にあるとは思いませんでした。

説明の 利用できる画面（レコード詳細画面）とは  
「detail.showのイベントのみ」ということなんですね。  
レコード詳細画面と一覧画面の２つがある前提で理解をしていました。

---

<div class="post-metadata">

**Author:** ![aaa](https://sea1.discourse-cdn.com/flex015/user_avatar/community.cybozu.dev/aaa/32/277_2.png) [@aaa](https://community.cybozu.dev/u/aaa)\
**Post date:** [2025 年 1 月 15 日午前 4:05 UTC](https://community.cybozu.dev/t/topic/9965/4 "2025-01-15T04:05:21Z")

</div>

イベント一覧です。

kintone JavaScript API - cybozu developer network

> **[kintone JavaScript API](https://cybozu.dev/ja/kintone/docs/js-api/)**
>
> kintoneの画面上の動作や見た目を変えるAPIです。JavaScriptファイルをアプリにアップロードして適用することで、ユーザーのkintone画面上で動作します。kintoneにはさまざまなJavaScriptイベントがあり、動作を変更できます。

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex015/uploads/cybozu/original/1X/d5c841c3c5a6cb66eed514001c1b45147c9e1f4f.png) [@system](https://community.cybozu.dev/u/system)\
**Post date:** [2025 年 1 月 18 日午前 4:06 UTC](https://community.cybozu.dev/t/topic/9965/5 "2025-01-18T04:06:22Z")

</div>

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