Razor Html.BeginForm提交按钮适用于除chrome之外的所有浏览器

时间:2018-01-11 16:24:50

标签: asp.net google-chrome razor

我一直在寻找并找到了各种答案,但到目前为止,似乎没有人在这里找到我的问题。看到的东西在其他浏览器中不起作用但还没有镀铬,我不太使用chrome。我的问题是当我单击此登录表单的提交按钮时,它可以在除chrome之外的每个浏览器中运行。由于使用chrome时控制器甚至没有被击中,因此表单似乎没有发布。我知道我做错了什么?我应该补充一点,调试器控制台中没有错误。

这是我的整个剃刀页面减去上面的@model语句。 javascript旨在显示一个有效的微调器。只是表单发布不是,只在chrome。

<div class="row">
	<div class="col-xs-4 col-xs-offset-4 col-md-2 col-md-offset-5 text-center">
			@using (Html.BeginForm("Authorize", "Account", new { ReturnUrl = ViewBag.ReturnUrl }, FormMethod.Post, new { @class = "clearfix", role = "form", autocomplete="off" }))
			{
				<div class="form-group">
					@Html.AntiForgeryToken()
					<h3><i class="fa fa-sign-in" aria-hidden="true"></i> Sign In With Domain Credentials</h3>
					<div id="validationSummary" class="">
						@Html.ValidationSummary(true, "", new { @class = "control-label text-danger" })
					</div>
					<p class="form-control-feedback text-danger"></p>
					<div class="form-group">
						@Html.LabelFor(Model => Model.UserName, new { @class = "control-label" })
						@Html.TextBoxFor(Model => Model.UserName, new { @class = "form-control" })
						@Html.ValidationMessageFor(Model => Model.UserName, "", new { @class = "text-danger" })
					</div>
					<div class="form-group">
						@Html.LabelFor(Model => Model.Password, new { @class = "control-label" })
						@Html.PasswordFor(Model => Model.Password, new { @class = "form-control" })
						@Html.ValidationMessageFor(Model => Model.Password, "", new { @class = "text-danger" })
					</div>
					<div class="form-group">
						<button id="submit-button" type="submit" class="btn btn-primary btn-block active" >Sign In</button>
					</div>
				</div>
			}
	</div>
</div>
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/scripts")
<script type="text/javascript">
	$(document).ready(function () {
		var valSummary = $('#validationSummary');
		var submitButton = $('#submit-button');
		$('#submit-button').click(function () {
			console.log("Button Clicked");
			$("#submit-button").html("<i class=\"fa fa-spinner fa-pulse\"></i> Signing In...").prop('disabled', true);
			console.log("Click finished");
		});
	});
	console.log("Button setup");
</script>

1 个答案:

答案 0 :(得分:0)

所以我花了几天时间调试它,但从未搞过微调代码。我从其他地方复制了这个按钮微调器的想法,并没有弄乱它。禁止多次点击按钮的.prop('disabled', true);似乎适用于除chrome之外的所有内容。这可能是问题所在。我想在签名时我必须找到另一种方法来禁用按钮,这不会导致Chrome浏览器出错......

$('#submit-button').click(function () { console.log("Button Clicked"); $("#submit-button").html("<i class=\"fa fa-spinner fa-pulse\"></i> Signing In...").prop('disabled', true); console.log("Click finished"); });