#javascript #php #jquery #laravel #laravel-blade
#javascript #php #jquery #laravel #laravel-blade
Вопрос:
У меня есть форма рецепта, и я отправил форму с помощью AJAX.
Теперь я хочу автоматически перенаправить на другой маршрут из AJAX после успешной отправки формы.
Я пробовал несколько вариантов, таких как
window.location.href = "{ url('/show-all-prescription') }"
и
{{ route('/show-all-prescription')}}
AJAX-КОД
jQuery.ajax({
url:"{{ url('/submit_prescription') }}",
type: 'GET',
data: {name: name, age: age, mobile_no: mobile_no},
success:function(msg){
if(msg>0)
{
// window.location.href = "{ url('/show-all-prescription') }";
{{ route('/show-all-prescription')}}
}
}
});
И получил ошибку
Маршрут [/показать все по рецепту] не определен
route.php
Route::get('/show-all-prescription', 'prescriptionController@show_all_prescription');
Но не получаю результат. Кто-нибудь, пожалуйста, помогите?
Комментарии:
1. Если ваш JS внешний загружен или визуализирован из шаблона блейда?
2. @paskl … внутри из шаблона блейда
3. Что происходит, когда вы создаете переменную JS и устанавливаете ее значение из блейда в путь маршрута? Переменная JS внутри отображаемого шаблона не определена или значение правильное?
4. @paskl… Я обновил свой код .. пожалуйста, проверьте
Ответ №1:
В файле маршрута
Route::get('/show-all-prescription', 'prescriptionController@show_all_prescription')->name('show-all-prescription');
Затем в файле блейда запрос ajax,
window.location.href = "{{ route('show-all-prescription')}}";
Комментарии:
1. Вы также можете использовать маршрут, предложенный в этом ответе, в вашем JS-файле просто добавьте:
window.location.href = "/show-all-prescription"
Аналогично, вы можете передать параметры, подобные этому:window.location.href = "/show-all-prescription" perscriptionVariable
При обновлении маршрута до:Route::get('/show-all-prescription/{perscriptionVariable}', 'prescriptionController@show_all_prescription');