Отключить форму с помощью jQuery после отправки - PullRequest
1 голос
/ 04 марта 2010

Есть ли способ отключить всю форму, используя jQuery после отправки?

Ответы [ 4 ]

2 голосов
/ 04 марта 2010

Если у вас есть только одна форма на странице (и вы не планируете добавлять ее в ближайшее время):

$( function( )
{
     $( 'form' ).submit( function( )
     {
          $( this ).find( 'input, textarea' ).attr( 'disabled', 'disabled' );
     } );
} );

Если вам нужно использовать идентификатор (<form id="idOfYourSubmitButton">):

$( function( )
{
     $( '#idOfYourSubmitButton' ).submit( function( )
     {
          $( this ).find( 'input, textarea' ).attr( 'disabled', 'disabled' );
     } );
} );
2 голосов
/ 04 марта 2010

Чтобы отключить все элементы формы в форме (этот код фактически отключит все элементы ввода во всех тегах формы на странице, поэтому вы захотите сделать селектор более конкретным).

$(function() {
    $("#idOfYourSubmitButton").click(function() {
        $("form input").attr("disabled","disabled"); 
    });
})
0 голосов
/ 04 марта 2010
$(function() {
    $("#idOfYourSubmitButton").click(function() {
        $(this).attr("disabled","disabled");    
    });
})

но имейте в виду, что если что-то пойдет не так, вы захотите повторно включить кнопку с помощью .removeAttr («отключено»);

0 голосов
/ 04 марта 2010

Конечно. Просто перехватите событие onsubmit, отправьте форму, затем сделайте выборку для элемента submit и установите для него значение disabled. См. http://www.w3.org/TR/html401/interact/forms.html#h-17.12.1 для всех захватывающих деталей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...