Pass the search parameters into a request that has set of filter parameters
Tue Nov 17 2020 11:01:17 GMT+0000 (UTC)
Saved by
@eneki
#laravel
#javascript
<button type="submit" id="customers_filter" onclick="checkWhetherTheTableContainsSearchResults()"
class="btn filter-button d-inline-block ml-3">
Filter
</button>
<input id="search-hidden-input" hidden name="searchValue">
<script>
function checkWhetherTheTableContainsSearchResults() {
let search = location.search.substring(1)
searchInputElement = document.getElementById('search-hidden-input');
if(search != '') {
searchInputElement.setAttribute('value', search);
}
}
</script>
// If the filter is to work on search results, the original search parameter has to be passed into the request array.
// Thus, the request array will return more than one parameter
// AND
// one of the parameters will be searchValue
// WHICH
// will contain the entire search parameter (key + value)
if ((count($request->all()) > 1) && (isset($request->searchValue))) {
if (strpos($request->searchValue, '=')) {
$string = $request->searchValue;
$array = explode('=', $string);
$request->searchValue = $array[1];
}
}
content_copyCOPY
Comments