Судя по вашим комментариям, кажется, что это работает - но перенаправляет - когда вы не используете ajax, но не работает, когда вы используете ajax.
Это может показаться логичным: когда вы этого не делаетеиспользуя ajax, вы отправляете на сервер 4 пары ключ-значение:
- _token
- writer_id2
- status
- writer-skill *
И когда вы используете ajax, вы отправляете только 3 пары ключ-значение, из которых только 1 имеет правильный ключ:
Так что, по крайней мере, вам нужно изменить данные, которые вы отправляете при использовании ajax.
Итак, это:
data: {
'id': id,
'status': status,
'skills': skills
},
Должно быть:
data: {
'writer_id2': id,
'status': status,
'writer-skills': skills
},
Теперь у вас есть, по крайней мере, часть данных, отсортированная, но она все равно может потерпеть неудачу из-за отсутствия _token
, и если это так, вам нужно будет добавить и эту часть.
Однако, как ни странно, полученное вами сообщение об ошибке говорит о том, что токен не нужен, что, вероятно, указывает на ошибку конфигурации.
Чтобы просто добавить все без необходимости назначения переменных вручную, я бы порекомендовалвместо этого используйте:
data: $('form').serialize(),
Теперь вы получите те же данные, что и с «обычным» / не-AJAX-сообщением.
Кроме того, я бы также порекомендовал прослушатьсобытие отправки формы вместо нажатия кнопки, чтобы ваш javascript также обрабатывал любые отправки, вызванные, например, использованием клавиши ввода.