我要提交内容并跳回上一页。我该怎么办?
1。只有一种方法可以实现你的目标,那就是跳到上一页,放在你提交的表单处理页面,而不是你当前的表单提交页面。此外,您应该使用面向页面的选项。
2.你之所以会出现这种情况,是因为触发onclick/submit的时候,提交已经生效了,已经转到下一页了。这个页面上的java程序已经失败了,你采取的任何行动都没有意义。如果使用onclik=return false,就会中断提交,这不是您预期的结果。
3.如果你无法控制提交的页面(比如你做了一个表格,提交给百度),你就不得不采用其他方法。
在这里,我可以给你提供一个方法:你可以在
以上只是一个例子,你可以从target来理解。
form组件的提交函数由什么组成?
jquery-form.js这个插件来实现回调函数:
<form id=”addform” method=”post” action=”请求接口地址” enctype=”multipart/form-data” target=”rfFrame”>
<p >
<p >
<label for=”customName” >广告包名称</label>
<p >
<input type=”text” name=”customName” id=”customName” placeholder=”广告包名称”>
</p>
</p>
<p >
<label for=”limited” >日限量</label>
<p >
<input type=”text” name=”limited” id=”limited” placeholder=”每日下载次数”>
</p>
</p>
<p >
<label for=”file” >URL地址</label>
<p >
<input type=”file” name=”file” id=”file”>
</p>
</p>
<!– /.box-body –>
<p >
<label for=”submit” ></label>
<p >
<button type=”button” id=”submit” >提交</button>
</p>
</p>
<!– /.box-footer –>
</form>
<iframe id=”rfFrame” name=”rfFrame” src=”about:blank” ></iframe>
注意:target=”rfFrame”调取的是下面这个iframe的id值。作用是为了提交表单时防止页面跳转;表单要上传文件时需设置属性enctype=”multipart/form-data”,具体原因不太清楚;
好了,现在要上jquery-form.js 的提交代码了:
$(“#submit”).click(function(){
var options = {
url:请求接口地址, //同action
type:’post’,
beforeSend:function(xhr){//请求之前
var index = layer.load(1, {
shade: //0.5透明度的黑色背景
});
},
success:function(data)
{
},
complete:function(xhr){//请求完成
layer.closeAll(‘loading’);
//询问框
layer.confirm(‘广告主修改成功!页面将跳转到列表页。’, {
btn: //按钮
}, function(){
location.href = “adList.html”;//location.href实现客户端页面的跳转
});
},
error: function(xhr,status,msg){
//alert(“状态码”+status+”; “+msg)
layer.msg(‘玩命加载中..’);
}
};
$(“#addform”).ajaxSubmit(options);
});
另外说明一下,如果没有上传文件的话,完全可以使用ajax请求就好了,没必要这么折腾。那也就说明 ajax请求不能够上传文件,ajax只能传递文本类信息。