ajax - Evite clicar duas vezes em enviar
Como posso impedir que o usuário clique duas vezes no botão enviar no meu formulário de inscrição, que é uma exibição parcial do ajax?
Lamento perguntar, pois isso já teria sido solicitado. Eu simplesmente não consigo encontrar uma resposta clara de trabalho agora importa onde eu procuro. Desativar o botão impede o envio. O uso de uma contagem de cliques var javascript + alerta + return_false não é redefinid
Ambiente: asp.net mvc3
Visão O formulário exibe onload:@RenderPage("_SignupForm.cshtml")
Submissão usando:
@using (Ajax.BeginForm("Index", "Signup", null,
new AjaxOptions
{
UpdateTargetId = "signupForm",
InsertionMode = InsertionMode.Replace,
HttpMethod = "POST",
LoadingElementId="progress"
}
))
Controle de envio:<input type="submit" value="Sign up" />
SignupController:
public ActionResult Index()
{
return View();
}
[HttpPost]
public ActionResult Index(SignupModel formvalues)
{
Thread.Sleep(5000);
string errors = "";
if (TryValidateModel(formvalues))
{
errors = SignupAPI.Signup(formvalues); //includes custom validation
}
if (ModelState.IsValid == false || string.IsNullOrEmpty(errors) == false)
{
ViewBag.Errors = errors;
return PartialView("_SignupForm", formvalues);
}
else
return Redirect(string.Concat("http://localhost/welcome"));
}