В настоящее время я застрял с моей собственной многоэтапной реализацией формы в SilverStripe. как примечание, я знаю о модуле многоэтапной формы, однако он имеет слишком много ограничений для моего использования. У меня проблемы с загруженными AJAX формами и FormActions. У меня есть 3 кнопки отправки на каждой странице шага (вернуться к следующему сохранению). Каждый раз, когда нажимается следующая кнопка или кнопка «Назад», выполняется отправка шага, и контроллер страницы (который не работает) выполняет действие FormAction на основе нажатой кнопки. Тем не менее, я застрял с проблемой, что все мои кнопки запускают одно и то же действие, когда они выполняются в JQuery с AJAX. Я проверил, что действие выполняется при обычном выполнении (без AJAX и JQuery)
В настоящее время я делаю что-то подобное с моей формой
(function($) {
$(function () {
$('.QuestionForm').on('submit', '#Form_QuestionForm', function (e) {
var $form = $(this);
var formData = $form.serialize();
var formAction = $form.prop('action');
var formMethod = $form.prop('method');
var encType = $form.prop('enctype');
$.ajax({
contentType: encType,
data: formData,
success: function (data, textStatus, jqXHR) {
var $holder = $form.parent();
$holder.fadeOut('slow', function () {
$holder.html(data).fadeIn();
});
},
type: formMethod,
url: formAction
});
e.preventDefault();
});
});
})(jQuery);
на основе примера http://www.riptutorial.com/silverstripe/example/16420/creating-a-simple-ajax-form
однако, все мои кнопки вызывают только следующее действие, когда я использую этот метод. Решения будут оценены! Я застрял с этим в течение нескольких недель