我有一个表单,其中提交的继续取决于ajax响应。
$('#restaurant_form').on('submit', function(e) {
e.preventDefault();
fetchRestaurant(); // Checks if restaurant is already registered
});
在fetchRestaurant()
,当餐厅不存在时,我称之为继续:
$('#restaurant_form').submit();
但是我有一个循环,其中似乎触发了提交的事件处理程序。如何正确调用本机提交?
答案 0 :(得分:0)
不要使用preventDefault方法,以非提交循环结束。使用return。
<form onsubmit="return validateRestaurant(this)">
...
</form>
<script src="https://unpkg.com/jquery@3.2.1/dist/jquery.min.js"></script>
<script>
function validateRestaurant (form) {
$.get('fetchRestaurant.php')
.then(function (restaurant) {
if (restaurant.exists) form.submit()
})
return false
}
</script>