尝试将ajax自动完成集成到我在laravel中的创建记录中
我发现一个ajax自动完成,我不想把它集成到我的表单中,但我不能让它工作。请告知,谢谢 [控制器]尝试将ajax自动完成集成到我在laravel中的创建记录中,ajax,laravel,autocomplete,Ajax,Laravel,Autocomplete,我发现一个ajax自动完成,我不想把它集成到我的表单中,但我不能让它工作。请告知,谢谢 [控制器] <?php namespace App\Http\Controllers; use App\Purchasetransactions; use App\AjaxAutocompleteController; use App\Products; use App\Categories; use Illuminate\Http\Request; use Illuminate\Support\Fac
<?php
namespace App\Http\Controllers;
use App\Purchasetransactions;
use App\AjaxAutocompleteController;
use App\Products;
use App\Categories;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Session;
class PurchasetransactionsController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$purchasetransactions = Purchasetransactions::all();
return view('orders.index', compact('purchasetransactions'));
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
return view('orders.create');
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
$purchasetransactions = Purchasetransactions::create($request->only('products_code','name'));
return redirect(route('orders.index'));
}
/** Auto Complete */
public function productSearch(Request $request){
$query = $request->get('term','');
$products=\DB::table('products');
if($request->type=='product_code'){
$products->where('product_code','LIKE','%'.$query.'%');
}
if($request->type=='product_name'){
$products->where('name','LIKE','%'.$query.'%');
}
$products=$products->get();
$data=array();
foreach ($products as $product) {
$data[]=array('product_code'=>$product->product_code,'name'=>$product->name);
}
if(count($data))
return $data;
else
return ['product_code'=>'','name'=>''];
}
}
我在laravel中的输入字段中添加了多个自动完成搜索,每次实现它时,我都必须对其进行备份。这对我有用。这是我正在搜索的匹配缩写的输入
<div class="input-group">
@if(isset($_GET['variable_name']))
<input value="{{$_GET['variable_name']}}" type="search" name="variable_name" class="form-control" id="variable_name" autocomplete="off">
@else
<input type="search" name="variable_name" class="form-control" id="variable_name" placeholder="Search" autocomplete="off">
@endif
</div>
我的路线:
Route::get('/find', 'PagesController@find')->name('typeahead.search');
图书馆:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
还需要bloodhound.js和tyepahead.jquery
public function find(Request $request) {
$result=Abbreviation::where('abbreviation', 'LIKE', "%{$request->input('variable_name')}%")
->orWhere('name', 'LIKE', "%{$request->input('variable_name')}%")->get();
return response()->json($result);
}
Route::get('/find', 'PagesController@find')->name('typeahead.search');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>