模态关闭跳转到页面底部

Modal close jumping to the page bottom

我有一个 ModalPartial。在页面上,我使用了 HTML5 错误,例如输入框的最小、最大长度。

这个页面很大,触发弹窗的按钮在页面底部。

<button type="button"
        class="button"
        asp-route-id="@Model.Id"
        asp-route-culture="@culture"
        data-toggle="modal"
        data-target="#MyModal"
        asp-page-handler="Create">
</button>

我找到了如何向上“滚动”到有错误的输入。

var elements = document.querySelectorAll('input,select,textarea');
var invalidListener = function () { this.scrollIntoView(false); };

for (var i = elements.length; i--;)
    elements[i].addEventListener('invalid', invalidListener);

但是当我使用以下代码隐藏模态时:

$("#myModal").modal('hide');

页面滚动回显示模式的按钮。我想阻止这种情况。我尝试了 event.preventDefault() 但它不起作用。

解决方案是:

当我检查javascript中的html错误时,我也关闭了模态,从代码中,然后不跳转到底部页面。