我希望将表单的操作加载到调用它的同一个标签中。我有一个主页如下:
<script>
$(function() {
$( "#tabs" ).tabs(
);
});
</script>
<body>
<div id="tabs">
<ul>
<li><a href="page1.php">page1</a></li>
<li><a href="page2.php">page2</a></li>
</ul>
</div>
</body>
page1.php和page2.php上的我有不同的表格。 在page1.php例如:
<form name="form1" id="form1" action="page1.php" method="post">
/* form components */
</form>
基本上表单重新加载页面本身并填充下面的div。 如何在选项卡上进行提交(并刷新)?现在通过提交表单page1.php在新窗口中加载。 我尝试使用这个片段,我发现在stackoverflow中搜索但没有运气
<script>
$(document).on('submit', '#form1', function() {
var data = $(this).serialize();
var actionUrl = $(this).attr('action');
$.post(actionUrl, data, function(response) {
/* do something when form submittal completed*/
})
return false; /* prevent browser default submit and redirect*/
});
</script>
答案 0 :(得分:0)
通过在选项卡中加载以下代码
添加页面来解决此问题$('#formID').on('submit', function(e){
e.preventDefault();
var formSrc = $(this).attr('action');
var formMethod = $(this).attr('method');
var formData = $(this).serialize();
$.ajax({
url: formSrc,
type: formMethod,
data: formData,
success: function(data){
//work with returned data from requested file
$("#divID").html(data);
}
});
});