2012-01-10 2 views
1

У меня есть тип данных, который имеет форму в каждой строке для изменения статуса конкретной строки. эта форма вызывается через ajaxForm().jquery + datatables + при успешном вызове ajax, изменить класс кнопки отправки, который был нажат

<form action="map/statuschange/289.html" method="post" accept-charset="utf-8" class="point-actions-form form-status" id="point-status-change-289"> 
    <input type="submit" name="status-link" value="" id="deactivate-point" class="status-link status-link-activate"> 
</form> 

это ajaxForm() ЯШ:

$('.form-status').ajaxForm({ 
    dataType: 'json', 
    type: 'POST', 
    success: function(){ 
     if ($('.point-actions-form > .status-link').hasClass('status-link-deactivate')){ 
      $(this).removeClass('status-link-deactivate').addClass('status-link-activate'); 
     }else{ 
      $(this).removeClass('status-link-activate').addClass('status-link-deactivate'); 
     } 
     showResponseForm; 
    } 
}); 

Теперь, когда пользователь нажимает на кнопку отправки мне это нужно, чтобы изменить класс этой конкретной кнопки они щелкнули, и не все кнопки, которые появляются в таблице. Как я могу это сделать?

ответ

2

Рассматривая исходный код плагина ajaxForm, он дает вам объект формы в качестве четвертого параметра в обратном вызове! Таким образом, вы можете сделать это:

success: function(data, status, xhr, form){ 
    $('#deactivate-point',form).removeClass("status-linke-activate").addClass("status-link-deactivate"); 
} 

(смотри также: http://jsfiddle.net/fj9Bd/1/)

 Смежные вопросы

  • Нет связанных вопросов^_^