Нет... Делал и вот так
<!DOCTYPE html>
<html>
<head>
<title></title>
<style>
.hide{display:none;}
</style>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
</script>
<script>
$(function () {
$("#form").onsubmit = function () {
var form_data = $("#form").serializeArray;
$.ajax({
url: '',
type: 'POST',
data: form_data
});
$(".hide").style.display = "block";
};
});
</script>
</head>
<body>
<div class="hidden">
<form action="#" id="form">
<input type="hidden" name="prev" value="1" />
<input type="submit" name="submit">
</form>
</div>
<div class="hide">
скрытый див
</div>
</body>
</html>
все равно обновляется