Я использую laravel 5.1, и я пытаюсь добавить автозаполнение в мою форму, это не возвращает ошибку, но всегда возвращает не может найти ни одного.
Я очень новичок в JavaScript.
пожалуйста, помогите мне исправить это
вот мой шаблон:
{!! Form::label('Name', 'Name:') !!}
{!! Form::text('name',null,['class'=>'form-control', 'id'=>'users']) !!}
вот мой маршрут:
Route::get('/', 'SearchController@index');
Route::get('/query','SearchController@query');
вот мой контроллер
class SearchController extends Controller {
public function index() {
return View::make('template');
}
public function query() {
$query = Input::get('name');
$res = User::where('name', 'LIKE', "%$query%")->get();
return Response::json($res);
}
}
вот мой main.js
jQuery(document).ready(function($) {
var sugest = new Bloodhound({
remote: '/bookstore/query?name=%QUERY%',
// '...' = displayKey: '...'
datumTokenizer: Bloodhound.tokenizers.whitespace('name'),
queryTokenizer: Bloodhound.tokenizers.whitespace
});
sugest.initialize();
$("#users").typeahead({
hint: true,
highlight: true,
minLength: 2
}, {
source: sugest.ttAdapter(),
name: 'engine',
displayKey: 'name',
templates: {
empty: [
'<div class="empty-message">unable to find any</div>'
]
}
});
});
Могу ли я предложить другую библиотеку JavaScript автозаполнения. Как насчет SELECT2. вот ссылка. https://select2.github.io/examples.html . это легко реализовать. Я использовал typeahead раньше, и мне потребовался день или два, чтобы заставить его работать.
Других решений пока нет …