2012-03-21 2 views
0

Я использую следующий плагин: http://codecanyon.net/item/dynamic-step-process-panels/118950 , и я пытаюсь изменить его поведение. В настоящее время, когда достигнута последняя вкладка, следующая кнопка становится неактивной, ее класс изменяется с «button activeButton» на «button inactiveButton». Мне нужно изменить следующий класс кнопок на тот, который я создаю сам, который будет действовать как кнопка отправки.Изменение плагина jQuery

я безуспешно пытался изменить класс Div следующим образом:

<script type="text/javascript"> 

    $(document).ready(function() { 
     $("#processPanel").processPanel({ 
      kind: "freeChoice", 
      icons: true, 
      nextPrevButtons: true, 
      style: "green-blue", 
      afterOpen: function(event, step, content, stepNumber){ 
       if(stepNumber==3) 
       { 
        $(".button inactiveButton").attr('class', 'button activeButton-green-blue'); 
       } 
      } 
     }); 

Любой совет будет высоко оценен ...

+0

Попробуйте использовать обработчик событий onOpen вместо afterOpen –

ответ

1

Чтобы соответствовать один элемент с несколькими классами, перед именем каждого с период и выйти из пространства:

$(".button.inactiveButton")... 

с пространством и inactiveButton не имеющий префикс, селектор пытается соответствовать что-то как это:

<div class="button"> 
    <inactiveButton /> 
</div> 

Вы также можете посмотреть на использование addClass и removeClass вместо установки атрибута class непосредственно:

$(".button.inactiveButton") 
    .removeClass('inactiveButton') 
    .addClass('activeButton-green-blue'); 

Таким образом, если элемент имеет какие-либо другие классы, возложенные на него , вы не удалите их непреднамеренно.

+0

Это сработало отлично, очень люблю :) –

+0

Я дал измененной кнопке название «Отправить», и я безуспешно пытаюсь отправить форму. $ ("[название = 'Отправить']") нажмите (функция() { \t \t \t оповещения ('представить!');. \t \t \t \t $ ("# RoomAddForm") представляет(). \t \t \t}); любой совет? –

+0

@ CroninO'M Убедитесь, что кнопка доступна при связывании '.click':' alert ($ ('[title = "Submit"]'). Size()); 'Но вам, возможно, придется использовать делегированную привязку с помощью ['.on'] (http://api.jquery.com/on/) или [' .delegate'] (http://api.jquery.com/delegate/): '$ ('# RoomAddForm ') .on (' click ',' [title = "Submit"] ', function() {/ * ... * /}); ' –