在两个字段上提前输入

时间:2018-12-29 17:48:35

标签: laravel typeahead

我正在尝试为两个字段启用预输入功能。第一个字段用于客户,第二个字段是向客户分配心理卡的位置。我希望用户能够自动完成从数据库中获取的卡ID。

我已经为客户启用了预输入功能,现在我想为卡ID字段添加第二个预输入功能。

AssigneController:

 public function autocomplete(Request $request)
          {
              $data = Customer::select("name")
                      ->where("name","LIKE","%{$request->input('query')}%")
                      ->get();

              return response()->json($data);
          }
          public function autocompletecard(Request $request)
          {
              $data1 = Card::select("number")
                      ->where("number","LIKE","%{$request->input('query1')}%")
                      ->get();

              return response()->json($data1);
          }
              }

这是我的web.php:

Route::get('autocomplete', 'AssigneeController@autocomplete')->name('autocomplete');
Route::get('autocompletecard', 'AssigneeController@autocompletecard')->name('autocompletecard');

这是我的create.blade.php

<div class="form-group">
                <strong>Customer id:</strong>
              <input class="typeahead form-control" type="text" id='cust' onkeypress="myFunction1()"placeholder="Customer id">
            </div>
            <div class="form-group">
                <strong>Referance id:</strong>
                <input type="text" name="refnumber" class="form-control" placeholder="RFC or EEF Number">
            </div>
            <div class="form-group">
                <strong>cabinet name:</strong>
                <input type="text" name="cabinetname" class="form-control" placeholder="Cabinet Name">
            </div>
            <div class="form-group">
                <strong>Card Number:</strong>
                <input  class="typeahead form-control" type="text"id='card' onkeypress="myFunction()"placeholder="Card id">
            </div>
    </div>

    <div class="col-xs-12 col-sm-12 col-md-12 text-center">
            <button type="submit" class="btn btn-primary">Submit</button>
    </div>
    <script>

    function myFunction() {
      var path = "{{ route('autocompletecard') }}";
      $('#card').typeahead({
          source:  function (query1, process) {
          return $.get(path, { query1: query1 }, function (data) {

                  return process(data);
              });
          }
      });
    }
    function myFunction1()
    {
      var path = "{{ route('autocomplete') }}";
      $('#cust').typeahead({
          source:  function (query, process) {
          return $.get(path, { query: query }, function (data) {
                  return process(data);
              });
          }
      });
    }
    </script>

我不确定只有输入域卡ID才能使第二个脚本执行。 关于如何实现某种形式的输入ID的一些指导和帮助,因此我可以将预输入脚本分别链接到每个输入。 我使用功能执行了两条路线,但是当我没有自动填写卡ID字段时。它仅适用于客户ID。

0 个答案:

没有答案