2017-02-08 3 views
0

Я просмотрел похожие вопросы, но до сих пор никаких решений не найдено. Я использую форму jQuery Steps, и я пытаюсь отключить кнопку отправки при нажатии, а также изменить внешний вид. Я пробовал использовать:Отключить и изменить цвет кнопки отправки в jQuery Шаги

$('finish').attr('disabled',true); 

Но это не сработало. Когда я нажимаю кнопку, она не отключает кнопку или не меняет внешний вид. Когда я нажимаю дважды, он отправляет мне два письма с тестовой формой.

EDIT: Я не пытаюсь удалить «вход», я пытаюсь удалить кнопку «отправить», которую документация jQuery отображается как «закончить».

Мой полный JS находится ниже.

$(function(){ 
      $("#smart-form").steps({ 
       bodyTag: "fieldset", 
       headerTag: "h2", 
       bodyTag: "fieldset", 
       transitionEffect: "fade", 
       titleTemplate: "<span class='number'>#index#</span> #title#", 
       labels: { 
        finish: "Submit Form", 
        next: "Continue", 
        previous: "Go Back", 
        loading: "Loading..." 
       }, 
       onStepChanging: function (event, currentIndex, newIndex){ 
        if (currentIndex > newIndex){return true; } 
        var form = $(this); 
        if (currentIndex < newIndex){} 
        return form.valid(); 
       }, 
       onStepChanged: function (event, currentIndex, priorIndex){ 
       }, 
       onFinishing: function (event, currentIndex){ 
        var form = $(this); 
        $('finish').attr('disabled',true); 
        form.validate().settings.ignore = ":disabled"; 
        return form.valid(); 


       }, 
       onFinished: function (event, currentIndex){ 
        var form = $(this); 
          $(form).ajaxSubmit({ 
         target:'.result',    
         beforeSubmit:function(){ 
          //$('.form-footer').addClass('progress'); 
         }, 
         error:function(){ 
          //$('.form-footer').removeClass('progress'); 
         }, 
         success:function(){ 
          $('.alert-success').show().delay(10000).fadeOut(); 
          //$("#wizard").steps('done'); 
          //$("#smart-form").steps('reset'); 
          //setCurrentIndex(); 
          //startIndex: 0 
          //reset(); 
          /*$('.form-footer').removeClass('progress'); 
          $('.alert-success').show().delay(10000).fadeOut(); 
          $('.field').removeClass("state-error, state-success"); 
          if($('.alert-error').length == 0){ 
          $('#smart-form').resetForm(); 
          reloadCaptcha(); 
          }*/ 
         } 
       }) 
       } 
+0

Возможный дубликат [Отключить/включить вход с JQuery?] (Http://stackoverflow.com/questions/1414365/disable-enable-an- вход-с-JQuery) – serverSentinel

ответ

0

Попробуйте это ...

//Applying colour for finish button 
var result = $('ul[aria-label=Pagination]').children().find('a'); 
$(result).each(function() { 
    if ($(this).text() == 'Finish') { 
     $(this).attr('disabled', true); 
     $(this).css('background', 'green'); 
    } 
});