ajaxSubmit(obj)方法是jQuery的一个插件jquery.form.js里面的方法,所以使用此方法需要先引入这个插件。如下所示:
<script src="/jquery-1.11.0.min.js"></script><script src="http://malsup.github.io/jquery.form.js"></script>
由于我的是上传文件提交form表单,请求方法放在action里面,我从后台返回的是一个String。
<div class="form layer-form" id="importForm"><div class="title">导入</div><form action="/wfdl/uploadWfdl" method="post" enctype="multipart/form-data"><div class="item"><div class="txt">选择文件</div><div class="cnt"><input type="file" class="ipt" name="filename" data-rule="required" /></div></div><div class="buttons" style="padding:20px 0;"><a href="javascript:void(0)" onclick="downloadTemplate()" class="ubtn ubtn-gray" target="_blank">下载模板</a><button type="button" class="ubtn ubtn-blue layer-close">关闭</button><button type="submit" class="ubtn ubtn-blue submit" style="width:120px;">确定</button></div></form></div>
js代码可以直接写,data就是我从后台返回的字符串,返回后直接提示:
$importForm.validator({valid: function(form) {$(form).ajaxSubmit({success: function(data) {layer.alert(data);}});}});
这样就解决了,我form表单提交时不知道怎么回调的问题,这种方式最起码以后提交了命令,可以返回消息告知请求失败还是成功,不会又搞其他一堆的样式,搞提示框什么的。