javascript - 表单提交后如何重新加载页面?
问题描述
$('form').submit(function () {
value = true;
var schoolName = $('#addSchoolName').val();
if (schoolName.trim() == '') {
$('#addSchoolName').addClass('border border-danger');
value = false;
}
if (value) {
return true;
}
else { return false;}
});
$("form").bind('ajax:complete', function () {
window.location.reload();
});
$('#close').on('click', function () {
$('#addSchoolName').removeClass('border border-danger');
$('#addSchoolName').val('');
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="modal fade" id="addSchool" tabindex="-1" role="dialog" aria-labelledby="addSchoolTitle" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered cls" role="document">
<div class="modal-content">
<div class="modal-header">
<label class="modal-title" id="addSchoolTitle">Add School Details</label>
</div>
<form asp-action="AddNewSchool" asp-controller="School" asp-antiforgery="true" method="post">
<div class="modal-body form-group row align-items-center">
<div class="col-md-4">
<label for="Name">School Name</label>
</div>
<div class="col-md-8">
<input class="form-control" name="Name" id="addSchoolName" />
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary " id="close" data-dismiss="modal">Close</button>
<button type="submit" id="submit" class="btn btn-primary">Save</button>
</div>
</form>
</div>
</div>
</div>
我在模态中使用表单并提交该表单。我想重新加载我的页面,以便在提交表单后,该模式后面的列表将更新。我不想使用 Ajax 调用来提交表单。
<div class="modal fade" id="addSchool" tabindex="-1" role="dialog" aria-labelledby="addSchoolTitle" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered cls" role="document">
<div class="modal-content">
<div class="modal-header">
<label class="modal-title" id="addSchoolTitle">Add School Details</label>
</div>
<form asp-action="AddNewSchool" asp-controller="School" asp-antiforgery="true" method="post">
<div class="modal-body form-group row align-items-center">
<div class="col-md-4">
<label for="Name">School Name</label>
</div>
<div class="col-md-8">
<input class="form-control" name="Name" id="addSchoolName" />
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary " id="close" data-dismiss="modal">Close</button>
<button type="submit" id="submit" class="btn btn-primary">Save</button>
</div>
</form>
</div>
</div>
</div>
现在写,我正在表单上应用这个验证。
@section scripts{
<script src="~/lib/jquery/dist/jquery.min.js"></script>
<script type="text/javascript">
$('form').submit(function () {
value = true;
var schoolName = $('#addSchoolName').val();
if (schoolName.trim() == '') {
$('#addSchoolName').addClass('border border-danger');
value = false;
}
if (value) {
return true;
}
else { return false;}
});
$("form").bind('ajax:complete', function () {
window.location.reload();
});
$('#close').on('click', function () {
$('#addSchoolName').removeClass('border border-danger');
$('#addSchoolName').val('');
});
</script>
我不想使用 ajax 调用来提交表单,我想在模态中提交表单后重新加载页面,以便更新该模态后面的列表。
解决方案
我有点困惑,因为默认情况下它应该在提交功能上重新加载。这就是我们event.preventDefault
最后使用的原因。但如果你想总有location.reload
推荐阅读
- ios - 按 tabbar 并在 prefersLargeTitles = true iOS 中调用 Scroll to top
- deep-learning - 为什么 CNN 中使用的图像大小通常是特定数字?
- dart - 如何通过手势传递到下面的对象?
- javascript - Vuejs SSR、Laravel 和 PHP V8Js 问题“窗口未定义”
- python - 重命名目录中的文件时的 If-Else
- javascript - 为什么fillText没有出现在画布中?
- javascript - 即使在使用 window.location 重定向后,Chrome 也会继续加载资源
- regex - 如何为我的词法分析器使用正则表达式转义字符串文字?
- c++11 - Visual Studio 2017 仅支持 c++11 功能?
- reactjs - Redux Saga 所有效果正确使用