jQuery是在web应用中使用的脚本语言之一,因其具有轻量级,易学易用等特点,已广泛应用,其中的ajax封装简化了我们的应用,对其表单数据序列化用如下方法:
1.serialize()方法
格式:var data = $("#formID").serialize();
功能:将表单内容序列化成一个字符串。
这样在ajax提交表单数据时,就不用一一列举出每一个参数。只需将data参数设置为 $("form").serialize()即可。
2.serializeArray()方法
格式:var jsonData = $("#formID").serializeArray();
功能:将页面表单序列化成一个JSON结构的对象。注意不是JSON字符串。
比如,[{"name":"lihui"},{...}] 获取数据为 jsonData[0].name
3.$.param()方法,可以把json格式数据序列化成字符串形式
varobj={a:1,b:2}
vars=$.param(obj);
会形成a=1&b=2的形式
function addSetting(){//添加
var myform = document.getElementById("myFormSave");
$.ajax({
url:"<%=path%>/save",
data: $("form").serialize(),
dataType: "json",
success:function(data){
if(data.success==true){
closeBg();
console.log("好了!");
window.location="<%=path%>/list";
}else{
console.log("没好!");
}
},
});
}
function distributor_sub(){
var phone = $('input[name="Phone"]').val();
var reg = /^1\d{10}$/
if(!reg.test(phone)){
layer.msg('请输入正确的手机号!');
return false;
}
$.ajax({
type:'POST',
url:'<{:U("Distributor/distributor_add")}>',
data:$("#add_distributor_form").serialize(),
success:function(msg){
console.log(msg)
switch(msg){
case '666':
layer.msg('提交分销商成功,请等待审核!')
setTimeout(function(){
parent.close_index('提交分销商成功,请等待审核!'); // 关闭弹框
},1000)
break;
case '100004':
layer.msg('分销商简称已存在,请检查已提交分销商或更改名称!', {icon: 6});
break;
case '100005':
layer.msg('分销商全称已存在,请检查已提交分销商或更改名称!', {icon: 6});
break;
default:
layer.msg('参数不全或参数格式错误,请认真填写!', {icon: 6});
break;
}
}
})
}