У меня проблема с плагином jquery шагов.jquery шаги и ajax
Я создал 3 этажа; первая - презентация, вторая - форма, а третья - раздел для формы результата.
<script>
function hasClass(element, cls) {
return (' ' + element.className + ' ').indexOf(' ' + cls + ' ') > -1;
}
$("#example-async").steps({
headerTag: "h3",
bodyTag: "section",
transitionEffect: "slide",
onFinished: function (event, currentIndex) {
},
labels: {
finish: "Register",
next: "Next",
previous: "Back",
loading: "Loading ..."
},
enableFinishButton: false,
saveState: true,
onStepChanging: function(event, currentIndex, newIndex)
{
var move = true;
if (currentIndex == 1) { // form
move = false;
var values = {};
$.each($('#UserRegisterForm input'), function(i, field) {
values[field.name] = field.value;
});
$.ajax({
type: 'POST',
url: "/cakephp/ajax/register_user",
data: JSON.stringify(values) ,
contentType: "application/json",
dataType: 'json',
success: function (data) {
if (data.result === 'ok')
{
move = true;
$("#example-async").steps("setStep", 2);
} else {
move = false;
}
}
});
}
return move;
}
});
При нажатии на кнопку Далее в 2section, я называю PERL скрипт, и если переменная «результат» равно «ОК» Я изменил раздел, иначе я вернуть ошибку в форму. Но когда я нажимаю кнопку «Далее», мой шаг не меняется!
Я также внедрил функцию jquery.step. добавить функцию:
$.fn.steps.setStep = function (step) {
return _goToStep(this, getOptions(this), getState(this), step); };
И:
function _goToStep(wizard, options, state, index){
return paginationClick(wizard, options, state, index); }
Где я неправ?