Home  >  Article  >  Web Front-end  >  Detailed explanation of jQuery Form plug-in usage

Detailed explanation of jQuery Form plug-in usage

小云云
小云云Original
2018-01-01 10:30:381577browse

This article mainly introduces the use of jQuery Form plug-in in detail. It has certain reference value. Interested friends can refer to it. I hope it can help everyone.

The jQuery Form plug-in is an excellent Ajax form plug-in that can easily and non-invasively upgrade HTML forms to support Ajax. jQuery Form has two core methods - ajaxForm() and ajaxSubmit(), which combine functionality from controlling form elements to deciding how to manage the submission process. In addition, the plug-in also includes other methods: formToArray(), formSerialize(), fieldSerialize(), fieldValue(), clearForm(), clearFields() and resetForm(), etc.

Download address: http://malsup.com/jquery/form/#download
Core methods--ajaxForm() and ajaxSubmit()


$('#myForm').ajaxForm(function() {  
 $('#output1').html("提交成功!欢迎下次再来!").show();  
}); 
   
$('#myForm2').submit(function() { 
 $(this).ajaxSubmit(function() {  
  $('#output2').html("提交成功!欢迎下次再来!").show();  
 }); 
 return false; //阻止表单默认提交 
});

Through the two core methods of the Form plug-in, you can easily upgrade the form submission method to the Ajax submission method ajaxForm() and ajaxSubmit( without modifying the HTML code structure of the form. ) can accept 0 or 1 parameter. When it is a single parameter, the parameter can be either a callback function or an options object. The above example is a callback function. The options object is introduced below so that they have control over the form. More control


var options = { 
 target: '#output',   //把服务器返回的内容放入id为output的元素中  
 beforeSubmit: showRequest, //提交前的回调函数 
 success: showResponse,  //提交后的回调函数 
 //url: url,     //默认是form的action, 如果申明,则会覆盖 
 //type: type,    //默认是form的method(get or post),如果申明,则会覆盖 
 //dataType: null,   //html(默认), xml, script, json...接受服务端返回的类型 
 //clearForm: true,   //成功提交后,清除所有表单元素的值 
 //resetForm: true,   //成功提交后,重置所有表单元素的值 
 timeout: 3000    //限制请求的时间,当请求大于3秒后,跳出请求 
} 

function showRequest(formData, jqForm, options){ 
 //formData: 数组对象,提交表单时,Form插件会以Ajax方式自动提交这些数据,格式如:[{name:user,value:val },{name:pwd,value:pwd}] 
 //jqForm: jQuery对象,封装了表单的元素  
 //options: options对象 
 var queryString = $.param(formData); //name=1&address=2 
 var formElement = jqForm[0];    //将jqForm转换为DOM对象 
 var address = formElement.address.value; //访问jqForm的DOM元素 
 return true; //只要不返回false,表单都会提交,在这里可以对表单元素进行验证 
}; 
 
function showResponse(responseText, statusText){ 
 //dataType=xml 
 var name = $('name', responseXML).text(); 
 var address = $('address', responseXML).text(); 
 $("#xmlout").html(name + " " + address); 
 //dataType=json 
 $("#jsonout").html(data.name + " " + data.address); 
}; 

$("#myForm").ajaxForm(options); 
 
$("#myForm2").submit(funtion(){ 
 $(this).ajaxSubmit(options); 
 return false; //阻止表单默认提交 
});

Verification before form submission: beforeSubmit will be called before the form is submitted. If beforeSubmit returns false, the form submission will be prevented


beforeSubmit: validate 
function validate(formData, jqForm, options) { //在这里对表单进行验证,如果不符合规则,将返回false来阻止表单提交,直到符合规则为止 
 //方式一:利用formData参数 
 for (var i=0; i < formData.length; i++) { 
  if (!formData[i].value) { 
   alert(&#39;用户名,地址和自我介绍都不能为空!&#39;); 
   return false; 
  } 
 } 
 
 //方式二:利用jqForm对象 
 var form = jqForm[0]; //把表单转化为dom对象 
  if (!form.name.value || !form.address.value) { 
   alert(&#39;用户名和地址不能为空,自我介绍可以为空!&#39;); 
   return false; 
  } 

 //方式三:利用fieldValue()方法,fieldValue 是表单插件的一个方法,它能找出表单中的元素的值,返回一个集合。 
 var usernameValue = $(&#39;input[name=name]&#39;).fieldValue(); 
 var addressValue = $(&#39;input[name=address]&#39;).fieldValue(); 
 if (!usernameValue[0] || !addressValue[0]) { 
  alert(&#39;用户名和地址不能为空,自我介绍可以为空!&#39;); 
 return false; 
 } 

 var queryString = $.param(formData); //组装数据 
 //alert(queryString); //类似 : name=1&add=2 
 return true; 
}

Related recommendations:

jQuery form plug-in formDdata parameter verification form and submission after verification_jquery

jQuery form plug-in's optional parameter object object of ajaxForm() and ajaxSubmit()_jquery

jQuery form plug-in's usage processing server return JSON, XML, HTML data_jquery

The above is the detailed content of Detailed explanation of jQuery Form plug-in usage. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn