新規投稿
フォローする

モバイル版でのアプリ一覧画面のレコード絞り込みについて

現在、アプリ一覧画面に検索用の入力スペースとボタンを配置し、スペースに入力した検索用コードに該当するレコードのみを表示するカスタマイズを作っています。

PC版のアプリについては上記の通りに動作するカスタマイズを実装できましたが、モバイル版のアプリについて、検索用コードに該当するレコードでの絞り込みがうまくできません。

kintoneヘルプにはモバイル版でできないこととして、レコードの絞り込み条件を指定できないとあり、もしできないのであればスマホやタブレットからPC版を利用する方向で考えていますが、カスタマイズを行うことでモバイル版で絞り込みが可能ならご教授いただきたいです。

以下、実装中のコードを記載させていただきます。

 

//検索したいフィールドの設定値
const FIELD_CODE = '検索コード';

//レコード一覧表示のイベントハンドラー
(function () {
 'use strict';
 kintone.events.on("mobile.app.record.index.show", function (event) {

  //GET引数に格納された直前の検索キーワードを取得して再表示
  var result = {};
  //クエリから、URL固定部分(?query=)を無視して取り出す
  var query = window.location.search.substring(7);
  //フィールドコード名と検索キーワードに分割する
  for(var i = 0;i < query.length;i++){
   var element = query[i].split('like');
   var param_field_code = encodeURIComponent(element[0]);
   var param_search_word = encodeURIComponent(element[1]);

   //空白スペースを取り除いて、配列に格納
   result[param_field_code.replace(/^\s+|\s+$/g, "")] = param_search_word.replace(/^[\s|\"]+|[\s|\"]+$/g, "");
  }

  //検索キーワード
  var search_word = document.createElement('input');
  search_word.type = 'text';

  //検索ボタン
  var search_button = document.createElement('input');
  search_button.type = 'submit';
  search_button.value = '検索';
  search_button.onclick = function () {
   keyword_search();
  };

  //キーワード検索の関数
  function keyword_search(){
   var keyword = search_word.value;
   var str_query = '?query='+ FIELD_CODE +' = "' + keyword;

   if(keyword === ""){
    str_query = "";
   }else if(keyword !== ""){
    str_query = '?query='+ FIELD_CODE +' = "' + keyword + '"';
   }

   //検索結果のURLへ
   document.location = location.origin + location.pathname + str_query;
  }

  //重複を避けるため要素をあらかじめクリアしておく
  var node_space = kintone.mobile.app.getHeaderSpaceElement();
  for (var t =node_space.childNodes.length-1; t>=0; t--) {
   node_space.removeChild(node_space.childNodes[i]);
  }
  var label = document.createElement('label');
  label.appendChild(document.createTextNode('検索用コード検索'));
  label.appendChild(document.createTextNode(' '));
  label.appendChild(search_word);
  label.appendChild(document.createTextNode(' '));
  label.appendChild(search_button);

  kintone.mobile.app.getHeaderSpaceElement().appendChild(label);

  return event;
 });
})();

0

2件のコメント

Avatar
juridon

初めまして!!こんにちは!

私もモバイル版で絞り込みたいと思って探していたのですが・・・

 

https://developer.cybozu.io/hc/ja/articles/202388664

↑こちらのページによると、

冒頭に

 

URL内のクエリで、表示するレコードの条件を指定

  • PC用画面のみで利用できます。

 

と書かれていますので、モバイルでのアプリ一覧画面のレコード絞り込みは現状ではできないのではないかと思います(><)

 

1
Avatar
西原 佑亮

juridon様

返信ありがとうございます。やはりモバイル版では絞り込みはできないみたいですね。

絞り込みを行う場合はPC版で行うようにしたいと思います。

 

1
サインインしてコメントを残してください。