取引支店(コード+名称)の入力欄の実装について質問です。 やりたいことは以下の2点です。 ① 店舗マスタDBの内容をセレクトボックスに表示したい PHPで作成したAPIを使い、店舗マスタDBから 「店舗コード・店舗名」を全件取得し、 画面表示時にセレクトボックスへ一覧表示したいと考えています。 画面読み込み時にAPIを呼び出し、 取得したデータをセレクトボックスに反映する方法について 実装例や考え方をご教示いただけないでしょうか。 ② テキストボックスとセレクトボックスを連動させたい 以下のような動作を実現したいです。 店舗コードをテキストボックスに入力したら → 該当する店舗名をセレクトボックスに表示したい セレクトボックスで店舗名を選択したら → 対応する店舗コードをテキストボックスに表示したい 項目連動の実装方法や注意点があれば教えてください。
<!-- 取引支店(コード+名称) -->
<div class="row mb-2 align-items-center">
<label class="col-4 col-form-label">取引支店</label>
<div class="col-8">
<div class="row g-2">
<div class="col-4">
<input type="text" class="form-control"
name="CustomerBranchCode"
th:value="${cp.result.value['CustomerBranchCode']}"
placeholder="店舗コード">
</div>
<div class="col-8">
<select class="form-select"
name="CustomerBranchName"
th:value="${cp.result.value['CustomerBranchName']}">
<option value="">選択してください</option>
</select>
</div>
</div>
</div>
</div> $where = "?where=@CustomerCode='" . $customer_code . "'";
$apiUrl = "/apps/".APP_ID."/dbs/".DB_ID_CustomerMemberInfo."/records/".$where;
// API呼び出し
$result = $commonBase->apiCurlAction("GET", $apiUrl);
// 結果をHTMLへ渡す
$SPIRAL->setTHValue("data", $result);
このような形のAPIで1レコード取得するやり方は分かるのですが、すべてのレコードを取得し、一つのせれくとぼっくすにまとめるやり方が解からない状態です。コメント
> ② テキストボックスとセレクトボックスを連動させたい 連動させる場合には、JavaScriptにて制御する必要がございます。 サンプルコードがなく恐縮ですが、実装イメージとしましては、下記となります。 ・セレクトを選んだらテキストにコードを入力 1. セレクトにて選択された際に動作 2. 選択中のセレクトのvalueの値(店舗コード)をテキストに入力 ・テキストに入力したらセレクトを選択 1. テキストが入力された際に動作 2. 入力したテキストのvalueの値を取得し、セレクトの選択肢のvalueの値が同じものを選択中に変更 ■注意点 テキストボックスにDBのデータにない値を入れた場合、セレクト項目をフィルタしているため、 セレクトに選択できる値がないなどが起こる可能性がございます。 存在しない店舗コードを受け付けない場合はJavaScriptでエラーメッセージを表示するなど 対応を追加ください。 ご確認の程、よろしくお願いいたします。
ナレッジ
向上チーム
ご連絡いただきましてありがとうございます。 > ① 店舗マスタDBの内容をセレクトボックスに表示したい PHPを確認しましたところ、Where条件を指定しているため、全件取得ではなくWhere条件が適応された後のレコードの取得になっているかと存じます。 全件取得の場合には、Where条件を除いて、条件をつけずに検索することで全件検索となります。 ※ただし件数に制限があり、1回のリクエストで取得できるレコードの数は、デフォルト20、最大で200レコードとなります。 取得件数を変更する場合には、パラメータにlimitを設定ください 200件以上の取得が必要な場合は、再度レコード取得のAPIを使用する必要がございます。 ▼APIメソッドごとのサンプルコードまとめ Record / Record (bulk) > レコード一覧取得メソッド https://knowledge.spirers.jp/article/development/detail/4148#:~:text=%E3%83%AC%E3%82%B3%E3%83%BC%E3%83%89%E4%B8%80%E8%A6%A7%E5%8F%96%E5%BE%97%E3%82%92%E5%AE%9F%E8%A1%8C ▼レコード一覧を取得 https://docs.spiral-platform.com/api/#operation/getRecords ▼APIで200件以上のレコードを取得するサンプルプログラム https://knowledge.spirers.jp/article/development/detail/9431 セレクトボックスの例ではございませんが、参照先DBのレコードをプルダウンで表示するサンプルプログラムがございますので、 ご参考いただけますと幸いです。 ▼参照先DBのレコードをフォームにプルダウンで表示 https://support.spiral-platform.com/api/sample/8390.html
-
いいね
2026年1月13日(火)