У меня есть форма входа в HTML в моем приложении ASP.NET MVC, которое выглядит так:
<form action="/Account/Login" class="form" method="post">
<input name="UserName" size="25" type="text" value="">
<input name="Password" size="25" type="password">
<button type="submit" class="glossy">Login</button>
</form>
<div class="loading-mask" id="authenticating">
<span>Authenticating ...</span>
</div>
Когда пользователь нажимает кнопку "Отправить", задержка перед обработкой /Account/Login и до того, как она вернется либо с частичной формой, отображающей ошибки, либо до того, как пользователь перейдет на новую страницу.
Есть ли способ, по которому я могу сделать div div невидимым, когда появится форма, и затем она станет видимой после нажатия кнопки отправки. Обратите внимание: мне не понадобится, чтобы он снова был скрыт, так как любое действие после отправки приведет к новой загрузке страницы.
Примечание. Я ищу способ, который не использует jQuery.
Сначала установите для свойства display
значение none
.
#authenticating {
display:none;
}
А затем в форме code
onsubmit="document.getElementById('authenticating').style.display = 'block'"
EDIT Как предложил Дейв, лучше использовать прослушиватели событий.
document.getElementsByClassName('form').addEventListener("submit", function(){
document.getElementById("authenticating").style.display = "block";
}), false);