Как отправить всплывающую форму с запросом ajax в laravel

Мой код Ajax

            Query(document).ready(function(){
            jQuery('#password_form').click(function(){
           $.ajaxSetup({
              headers: {
                  'X-CSRF-TOKEN': $('meta[name = "_token"]').attr('content')
              }
          });
           jQuery.ajax({
              url: "{{ url('/changepassword') }}",
              method: 'post',
              data: {
                 password: jQuery('#password').val(),
                 new_password: jQuery('#new_password').val(),
                 password_confirmation: jQuery('#password_confirmation').val()
              },
              success: function(result){
                 console.info(result);
              }});
           });
        }); 

Мой контроллер:

         public function changepassword(Request $request){
    $user = Auth::guard()->user();
    $request_data = $request->All();
    $validator = $this->admin_credential_rules($request_data);
    if ($validator->fails()) {
          $errors = $validator->errors();
        $errors = json_decode($errors);

        return response()->json([
            'success' => false,
            'message' => $errors
        ], 422);            } else {

        $current_password = $user->password;
        if (md5($request_data['password']) == $current_password) {
            $user_id = $user->id;
            $obj_user = User::find($user_id);
            $obj_user->password = md5($request_data['new_password']);
            $obj_user->save();

             return \Illuminate\Support\Facades\Redirect::to('mujucet')
                ->with("modal_message_success", "Password has been changed successfully");
        } else {
            return \Illuminate\Support\Facades\Redirect::to('mujucet')
                ->with("modal_message_danger", "wong old password");           
     }
    }
}

У меня есть всплывающее окно с тремя полями 1- пароль 2- новый_пароль 3- password_confirmation

Перед ajax моя форма отправлялась, но я хочу отправить форму с помощью ajax, поэтому моя страница не должна перезагружаться, а мое сообщение об успехе и ошибке должно отображаться в моей всплывающей форме, но здесь, когда я нажимаю кнопку, ее перезагрузка, а также значения не отправляются.

Я не знаю, что не так с моим запросом ajax. Будем признательны за вашу помощь!

Заранее спасибо, пожалуйста, нужна ваша помощь.

В чем твоя ошибка?

Chris Ruskai 04.10.2018 21:07
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
1
708
2

Ответы 2

 $("#myform").submit(function(e){
    e.preventDefault();
    //put your ajax here
 });

Вам необходимо запретить отправку формы с помощью приведенного выше кода.

Кнопка отправки всплывающего окна должна быть кнопкой, а не отправлять

<button type = "button" class = "btn btn-primary" title = "" 
id = "btn_submit">add</button>

<script>
$('#btn_submit').click(function () {
var type = $('#contain-type').val(); // take your all values you want to send 

/*ajax call*/
$.post(baseUrl + '/admin/confirmation-mail(your route)',{"_token": "{{ 
csrf_token() }}", id: parameter, subject: parameter},
function (data, status) { 
alert(data);
});
)};
</script>

Контроллер

public function name(Request $request){
dd(request->all()); //add your php code
}

эй ты там @shika?

shahzad shah 05.10.2018 09:51

Другие вопросы по теме