防止从 DOM 表单提交刷新



我想知道是否可以使用以下代码阻止页面在提交时刷新:

var new_element         = document.createElement('input');
new_element.type        = 'hidden';
new_element.name        = 'save';
new_element.value       = '';
var form_element = document.getElementById('document_form');    
form_element.appendChild(new_element);
form_element.submit();  

表单提交操作是一个导航事件,如果您不希望重新加载页面,则必须不使用提交操作。 然后,您需要处理另一种类型的策略,例如使用 ajax 发送请求并获取响应。

这是一个 jquery 示例:

$.post( "ajax/test.html", function( data ) {
//data contains the response
});

或者使用您在评论中写的 AngularJS:

$http({
method: 'POST',
url: '/someUrl'
}).then(function successCallback(response) {
// this callback will be called asynchronously
// when the response is available
}, function errorCallback(response) {
// called asynchronously if an error occurs
// or server returns response with an error status.
});

这里详细介绍了 AgularJS $http对象 https://docs.angularjs.org/api/ng/service/$http

最新更新