因为需要返回一些提示信息,所以索性用ajax提交表单,搜索了一下插件,发现jquery.form.js挺好用的,也能附带文件上传。以下是用法
$(function () {
// Init page helpers (BS Datepicker + BS Colorpicker + Select2 + Masked Input + Tags Inputs plugins)
App.initHelpers([ 'datepicker', 'colorpicker', 'select2', 'masked-inputs', 'tags-inputs' ]);
var options={
url: "<c:url value='/restaurant/add'/>",
type: "post",
beforeSubmit: validate, //验证方法
success: function(data){ //成功返回信息
if (data == 'true'){
window.location.reload();
$( '#formGallery').clearForm();
} else {
errorMesg(data);
}
}
};
$( "#formButton").click(function (){
$( "#form").ajaxSubmit(optionsGallery);
});
});
自己用到的就是这些用法,还有一些其他七七八八的用法,比如说:
//---把表单的所有参数转成 name1=value1&name2=value2 这种格式
var queryString = $('#myFormId').formSerialize();
//--表格选定参数转成以上各是
var queryString = $('#myFormId.specialFields').formSerialize();
// --返回表格元素的值 还不如直接用jquery获取值!!!
var value= $('#myFormId:password').findValue();
// resetForm clearForm clearFields
$('#myFormId').resetForm();
$('#myFormId').clearFoem();
$('#myFormId.specialFields').clearFields();
// ---beforeSerialize 序列化值之前的操作
beforeSerialize:function($form ,options){
//return false to cancel submit
}
// ---beforeSubmit 序列化值之前的操作
beforeSubmit:function(arr,$form ,options){ //或者是自己定义的方法,比如validate
//return false to cancel submit
}