我正在ASP.NET核心中构建一个正在做CRUD的项目。这是我的Edit.cshtml内部的表单,用于该项目的一部分。
<form asp-controller="DelayCategory" asp-action="Edit" method="post" autocomplete="off" id="myForm">
<div class="row rowcontent">
<div class="col-md-offset-4 col-md-4">
@Html.LabelFor(m => m.ID)
@Html.TextBoxFor(m => m.ID, new { @readonly = "readonly", @class = "form-control xs-input" })
@Html.LabelFor(m => m.Description)
@Html.TextBoxFor(m => m.Description, new { @class = "form-control " })
@Html.ValidationMessageFor(m => m.Description, null, new { @class = "text-danger field-validation-valid" })
@Html.LabelFor(m => m.DisplayBackgroundColor)
@Html.TextBoxFor(m => m.DisplayBackgroundColor, new { @class = "colorpicker form-control" })
@Html.ValidationMessageFor(m => m.DisplayBackgroundColor, null, new { @class = "text-danger field-validation-valid" })
@Html.LabelFor(m => m.DisplayFontColor)
@Html.TextBoxFor(m => m.DisplayFontColor, new { @class = "colorpicker form-control" })
@Html.ValidationMessageFor(m => m.DisplayFontColor, null, new { @class = "text-danger field-validation-valid" })
<hr />
<button type="submit" class="btn btn-primary">Save</button>
<button type="button" class="btn" onclick="window.location.href = '@Url.Action("List","DelayCategory")'">Exit</button>
</div>
</div>
这是简单的一行 $('#myForm')。validate();
如果我编辑字段并单击“保存”,则表单提交很好。如果我将字段编辑为无效,例如删除“描述”字段,然后单击“保存”,则该错误将像正常情况一样出现。填写后,错误消失了,并且像平常一样急切地得到了验证。但是在此之后,“保存”按钮什么也不做。当您点击保存按钮查看Google控制台时,您删除的任何出现错误的字段都会带有带有验证消息闪烁的标签,就像DOM正在更新该字段一样,或者该字段卡住了,并且退回表格。
任何帮助将不胜感激。我觉得我已经看了十亿个问题,尝试了许多不同的“ submitHandler”选项,但都没有成功。