在我的MVC项目中,我有一个表单要由用户填写。视图中有客户端验证;如果将输入字段保持为空并按post按钮,则会看到每个输入的验证标记。在点击post按钮时,将向用户显示一条消息以供发布。问题是点击按钮,即使没有填写表单,它仍然显示消息。我试图在javascript代码中使用Razor语法检查模型是否为null,但失败了。有什么建议吗?
@model User
<form method="post">
--------a few input fields in a form-------
<button id="button" type="submit" class="btn btn-lg btn-success">send</button>
</form>
<div class="submit-progress d-none">
<label>be patient please...</label>
</div>
@section scripts{
<partial name="_ValidationScriptsPartial" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-fileinput/5.2.7/js/fileinput.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#button").click(function () {
if(@Model != null){
$(this).prop("disabled", true);
$(".submit-progress").removeClass("d-none");
}
});
</script>
}
发布于 2022-04-07 08:36:56
当您将HTML发送到浏览器时,您的"@Model“将获得一个永不更改的值。假设@Model为null,则将此代码发送给客户端:
$(document).ready(function () {
$("#button").click(function () {
if(null != null){
$(this).prop("disabled", true);
$(".submit-progress").removeClass("d-none");
}
});
每个按钮点击都会有相同的条件。您需要执行一些AJAX调用或PostBack来检查您的模型是否继续为null。
https://stackoverflow.com/questions/71778230
复制相似问题