【发布时间】:2019-04-22 10:26:15
【问题描述】:
我正在使用 jQuery 的自动完成功能 在用户键入时获取数据。有用;我得到了一些与用户输入相匹配的 zipcode。
问题是我想传递的不仅仅是邮政编码,比如与该邮政编码相关联的社区。strong> 两者都在同一张表中。
我想在自动完成中传递邮政编码和邻居。
控制器:
<?php
namespace Grupo_Villanueva\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Response;
class SearchController extends Controller
{
public function buscarCp(Request $request)
{
$term = $request->input('term');
$results = [];
$queries = DB::connection('db_postalcodes')
->table('postal_code')
->where('postal_code', 'LIKE', '%' . $term . '%') //search 'postal_code' column
->take(10)
->get(); // get 5 results
foreach ($queries as $query) {
$results[] = [
'postal_code' => $query->postal_code,
'value' => $query->postal_code,
'colonia' => $query->neighborhood];
}
return Response::json($results);
}
}
我考虑过使用关联数组中的colonia 来获取它,尽管我不是专家。
JS:
@if (Request::is('admin/posts/create'))
{{-- <script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.6-rc.0/js/select2.min.js"></script> --}}
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<script>
$('.postalCode').autocomplete({
source: "{{ route('busqueda-cp') }}",
minLength: 3,
select: function (event, ui) {
$('#postalCode').val(ui.item.value);
}
});
</script>
@else
<!-- No se cargó select2-->
@endif
路线:
// Aquí se guarda la función que hace, vía ajax, búsqueda de código postal.
Route::get('/buscarCp', 'SearchController@buscarCp')->name('busqueda-cp');
【问题讨论】:
-
您的意思是要将街区附加到邮政编码中吗?在您的
$results中,您可以这样做:'value' => $query->postal_code . ' ' . $query->neighborhood, -
@newUserName02 有效。谢谢。问题:那么我可以这样附加任意数量的数据吗?。另外,请回答问题,以便我将您选为获胜者!
标签: javascript php jquery laravel autocomplete