2016-07-20 4 views
0

Я использую следующий код, чтобы заменить текст «отправить» в форме отправки формы контакта с изображением загрузки_dots.gif.Верните кнопку отправки в исходное состояние, если поля ввода пустые или неправильно заполнены.

// Replace submit button text with loading gif 
$('#submit').click(function() { 
    $(this).html('<img src="images/loading/loading_dots.gif" />'); 
}); 

Форма подтверждена перед отправкой. Если одно или несколько полей ввода не заполнены, как я могу вернуть кнопку в исходное состояние?

+0

вам используйте событие изменения, чтобы вызвать удаление img – madalinivascu

+0

Избегайте устаревших функций короткой формы, таких как '.click', используйте' .on'. Избегайте жестко закодированных blobs html в исходном коде js. Избегайте путей в js. Избегайте '.html', если это вообще возможно. Используйте имена классов CSS для динамического изменения страницы, когда это возможно. Не используйте самозакрывающиеся теги XML, html is * not * XML (даже если он «работает», много мусорных работ). Не мутируйте исходный код жестко закодированными константами, используйте именованные константы вверху. Не слушайте нажатие кнопки, вместо этого слушайте событие 'submit' формы. Вы можете отправить форму другим способом, например, с помощью клавиши ввода. – doug65536

ответ

0

Использование

$('#submit').click(function() { 
    var oldHtml = $(this).html(); 
    $(this).html('<img src="images/loading/loading_dots.gif" />'); 
}); 

используют эту oldHtml, если форма не проверяет должным образом

0

Назначают первоначальный HTML обратно кнопки, если проверка не пройдена

$('#submit').click(function() { 
 
    var initialHtml = $(this).html(); 
 
    $(this).html('<img src="images/loading/loading_dots.gif" />'); 
 
    if(!ValidateData()) 
 
    { 
 
    $(this).html(initialHtml); 
 
    } 
 
}); 
 

 
function ValidateData() 
 
{ 
 
    // if not valid 
 
    return false; 
 
}