# 一覧画面でのボタン操作について

**URL:** https://community.cybozu.dev/t/topic/2454
**Category:** kintone 開発相談
**Created:** [2016 年 6 月 19 日午後 2:53 UTC](https://community.cybozu.dev/t/topic/2454 "2016-06-19T14:53:14Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![Legacy\_Account2111](https://avatars.discourse-cdn.com/v4/letter/l/7c8e57/32.png) [@Legacy\_Account2111](https://community.cybozu.dev/u/Legacy_Account2111)
#### Post date: [2016 年 6 月 19 日午後 2:53 UTC](https://community.cybozu.dev/t/topic/2454/1 "2016-06-19T14:53:14Z")

</div>

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

&nbsp;

レコード一覧画面に作成したボタンを押し、一覧に表示されているレコードの情報を取得したいと考えております。

&nbsp;

&nbsp;

以下のURLのサンプル「レコード一覧で条件書式を設定する」のように

繰り返し文を使用し、レコード情報を記載するのだと思うのですが、うまくいきません。

[https://cybozudev.zendesk.com/hc/ja/articles/202341944-%E3%83%AC%E3%82%B3%E3%83%BC%E3%83%89%E4%B8%80%E8%A6%A7%E3%81%A7%E6%9D%A1%E4%BB%B6%E6%9B%B8%E5%BC%8F%E3%82%92%E8%A8%AD%E5%AE%9A%E3%81%99%E3%82%8B](https://cybozudev.zendesk.com/hc/ja/articles/202341944-%E3%83%AC%E3%82%B3%E3%83%BC%E3%83%89%E4%B8%80%E8%A6%A7%E3%81%A7%E6%9D%A1%E4%BB%B6%E6%9B%B8%E5%BC%8F%E3%82%92%E8%A8%AD%E5%AE%9A%E3%81%99%E3%82%8B)

&nbsp;

&nbsp;

取得したい情報は【レコード番号】(フィールドコード：レコード番号)です。

現状は以下のようなコードとなっております。

===================================================================

`(``function``() {`

&nbsp;

` ``"use strict"``;`

``` `kintone.events.on(`‘app.record.index.show’`, `function``(event) {`

&nbsp;

// メニュ右側の空白部分にボタンを設置  
var MenuButton = document.createElement(‘button’);  
MenuButton.id = ‘Menu\_Button’;  
MenuButton.innerHTML = ‘ボタン’;

MenuButton.onclick = function () {

&nbsp;

` ``var` `elNo = kintone.app.getFieldElements(``'レコード番号'``);`

``&nbsp;

` ``for` `(``var` `i = 0; i < elNo.length; i++) {`

` ``var` `record = event.records[i];`

&nbsp;

` window.alert(elNo[i])``;`&nbsp;

````` ``}`

&nbsp;

}

&nbsp;

&nbsp;

kintone.app.getHeaderMenuSpaceElement().appendChild(MenuButton);

&nbsp;

` ``});`

&nbsp;

`})();`

===================================================================

&nbsp;

やりたいこととしては、

ボタンを押して表示されているレコード番号を順にアラートで表示することです。

&nbsp;

コンソールで確認したところ、「`var` `record = event.records[i];」の部分に``エラーが出ており、`

`おそらくレコード一覧表示時とボタン押下時のレコード取得方法が違うのだと思いますが、`

`どのように記載すればよいかわかりません。`

&nbsp;

`お手数ではございますが、ご教示いただけますでしょうか。`

---

<div class="post-metadata">

### Author: ![Legacy\_Account1574](https://avatars.discourse-cdn.com/v4/letter/l/76d3ee/32.png) [@Legacy\_Account1574](https://community.cybozu.dev/u/Legacy_Account1574)
#### Post date: [2016 年 6 月 19 日午後 3:21 UTC](https://community.cybozu.dev/t/topic/2454/2 "2016-06-19T15:21:42Z")

</div>

y-kishiさん

&nbsp;

eventオブジェクトはkintone.events.on() のコールバックで得られるので、

&nbsp;

\>&nbsp;おそらくレコード一覧表示時とボタン押下時のレコード取得方法が違うのだと思いますが、

&nbsp;

の通りです。ボタンクリックもイベントの定義ですので、そのような際のレコード取得は [表示中のクエリ](https://community.cybozu.dev/hc/ja/articles/201942004)&nbsp;でレコード取得のAPIをコールすることになります。

---

<div class="post-metadata">

### Author: ![Legacy\_Account2111](https://avatars.discourse-cdn.com/v4/letter/l/7c8e57/32.png) [@Legacy\_Account2111](https://community.cybozu.dev/u/Legacy_Account2111)
#### Post date: [2016 年 6 月 20 日午前 1:33 UTC](https://community.cybozu.dev/t/topic/2454/3 "2016-06-20T01:33:32Z")

</div>

Ryu Yamashita 様

&nbsp;

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

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

&nbsp;

kintone.app.getQuery() という便利な関数があったのですね。

おかげさまで希望どおりの動作ができました。

&nbsp;

最終的には以下のようなコードになりました。

========================================================

(function() {

“use strict”;  
kintone.events.on(‘app.record.index.show’, function(event) {

// メニュ右側の空白部分にボタンを設置  
var MenuButton = document.createElement(‘button’);  
MenuButton.id = ‘Menu\_Button’;  
MenuButton.innerHTML = ‘ボタン’;

MenuButton.onclick = function () {

var query= kintone.app.getQuery();

kintone.api(  
kintone.api.url(‘/k/v1/records’, true),  
‘GET’, {  
app: 217,  
query: query  
},  
function(resp) {

var resplen = resp.records.length;

// レコード番号を繰り返しアラート表示  
for (var i=0; i \< resplen ; i+=1){

var recno = resp.records[i].レコード番号.value;  
window.alert(recno);

} //for終了

}); //GET終了

} //onclickイベント終了

kintone.app.getHeaderMenuSpaceElement().appendChild(MenuButton);

});  
})();

========================================================

&nbsp;

ボタンを押した際に、表示されているレコード番号を順にアラート表示するだけのコードですが、

取得するフィールドを変更すれば、他にいろいろ活用できそうです。

&nbsp;

ありがとうございます。
