/**
* 将form里面的内容序列化成json
* 相同的checkbox用分号拼接起来
* @param {obj} 需要拼接在后面的json对象
* @method serializeJson
* */
$.fn.serializeJson = function (otherString) {
var serializeObj = {},
array = this.serializeArray();
$(array).each(function () {
if (serializeObj[this.name]) {
serializeObj[this.name] += ';' + this.value;
} else {
serializeObj[this.name] = this.value;
}
}); if (otherString != undefined) {
var otherArray = otherString.split(';');
$(otherArray).each(function () {
var otherSplitArray = this.split(':');
serializeObj[otherSplitArray[0]] = otherSplitArray[1];
});
}
return serializeObj;
};
/**
* 将form里面的内容序列化成QueryString
* @method serializeQuerystring
* */
$.fn.serializeQuerystring = function () {
var str = this.serialize();
return str;
};
/**
* 将form里面的内容序列化成数组
* @method serializeList
* */
$.fn.serializeList = function () {
var t = $('form').serializeArray();
return t;
}
/**
* 将josn对象赋值给form
* @param {jsonValue} 需要给form赋值的json对象
* @method serializeJson
* */
$.fn.setForm = function (jsonValue) {
var obj = this;
$.each(jsonValue, function (name, ival) {
var $oinput = obj.find("input[name=" + name + "]");
if ($oinput.attr("type") == "checkbox") {
if (ival !== null) {
var checkboxObj = $("[name=" + name + "]");
var checkArray = ival.split(";");
for (var i = 0; i < checkboxObj.length; i++) {
for (var j = 0; j < checkArray.length; j++) {
if (checkboxObj[i].value == checkArray[j]) {
checkboxObj[i].click();
}
}
}
}
}
else if ($oinput.attr("type") == "radio") {
$oinput.each(function () {
var radioObj = $("[name=" + name + "]");
for (var i = 0; i < radioObj.length; i++) {
if (radioObj[i].value == ival) {
radioObj[i].click();
}
}
});
}
else if ($oinput.attr("type") == "textarea") {
obj.find("[name=" + name + "]").html(ival);
} else {
obj.find("[name=" + name + "]").val(ival);
obj.find("label[name=" + name + "]").text(ival);
} })
}

jquery.from帮助类的更多相关文章

  1. 分享一个手机端好用的jquery ajax分页类

    分享一个手机端好用的jquery ajax分页类 jquery-ias.min.js 1,引入jquery-ias.min.js 2,调用ajax分页 <script type="te ...

  2. 使用反射机制实现jQuery调用ashx类中的指定方法

    使用反射机制实现jQuery调用ashx类中的指定方法   近期用asp.net做个小网站,但又不喜欢使用asp.net的服务器端控件,经过一番思量后确定前端采用原始的html.后台采用Linq to ...

  3. jQuery - 自定义伪类 [:pseudoclass]

    有两种创建伪类的方法, 第一种, $.extend( $.expr[':'], { // 自定义的伪类名称:group group: function(element, index, matches, ...

  4. JQuery:JQuery操作CSS类

    JQuery:CSS类jQuery - 获取并设置 CSS 类,通过 jQuery,可以很容易地对 CSS 元素进行操作.jQuery 操作 CSSjQuery 拥有若干进行 CSS 操作的方法.我们 ...

  5. jQuery和MVVM类框架的编程区别点

    本文说的mvvm框架以react为列,其他应该也是类似的: react实际上仅仅是帮助我们再View层简化,让我们仅仅需要专注数据,只要数据改变,所有的视图就会自己跟随着改变, 本人自己做react项 ...

  6. PHP+jQuery 列表分页类 ( 支持 url 分页 / ajax 分页 )

    /* ******* 环境:Apache2.2.8 ( 2.2.17 ) + PHP5.2.6 ( 5.3.3 ) + MySQL5.0.51b ( 5.5.8 ) + jQuery-1.8.3.mi ...

  7. [Jquery] jQuery.cookie帮助类 (转载)

    /** * Cookie plugin * * Copyright (c) [url=http://sufei.cnblogs.com/]http://sufei.cnblogs.com[/url] ...

  8. jquery插件--问题类(新增&&删除)简易版

    HTML: <!doctype html> <head> <meta charset="utf-8" /> <script src=&qu ...

  9. 表单验证Jquery扩展方法类

    /** 表单数据验证 **/ $.fn.Validform = function () { var Validatemsg = ""; var Validateflag = tru ...

随机推荐

  1. OpenGL3.x,4.x中使用FreeImage显示图片的BUG-黑色,或颜色分量顺序错乱

    //参照FreeImage官网给出的CTextrueManager写的加载函数 //官方给的例子是用opengl3.0以下的旧GL写的,没有使用glGenerateMipmap(GL_TEXTURE_ ...

  2. Django的views使用

    这里介绍一下Django中常用的类视图,主要说明在视图中如何接收和传递参数.返回到页面等. 注意,使用这些类视图时,在url中需要加上.as_view(). 我将介绍的内容分为三部分:django的V ...

  3. Docker镜像加速 | Docker 中国源 | 仓库

    镜像加速 | Docker 中国https://www.docker-cn.com/registry-mirror

  4. 游戏引擎架构Note1

    [游戏引擎架构] 1.第14章介绍的对游戏性相关系统的设计非常有价值.各个开发人员几乎都是凭经验设计,很少见有书籍对这些做总结. 5.通过此书以知悉一些知名游戏作品实际上所采用的方案. 6.书名中的架 ...

  5. 05-nginx定时任务完成日志切割

    目标:每天晚上凌晨一点钟左右把昨天的任务给它切掉,把昨天的日志给它改个名存起来,根据昨天的时间给它改个名存起来,所以要根据日期生成文件名. 也许你不会写bash脚本,但是老师带着你一步一步地来. sh ...

  6. SpringBoot26 利用 Ribbon + RestTemplate 调用远程服务资源

    1 RestTemplate扫盲 借助 RestTemplate,Spring应用能够方便地使用REST资源  2 准备 创建三个springCloud项目 >Eureaka : 服务注册中心 ...

  7. “Device eth0 has different MAC address than expected, ignoring.”问题

    配IP后进行激活的时候提示如下错误:("Device eth0 has different MAC address than expected, ignoring.") 百度了下, ...

  8. Linux设置串口波特率等参数

    转自 http://blog.csdn.net/zoomdy/article/details/50921336 mingdu.zheng at gmail dot com stty查看串口参数 stt ...

  9. 多个if和一个ifelse的区别

    一个程序的要求如下,输入一个学生的数学成绩,如果大于等于60,那么就输出good,如果小于60那么输出not good int a scanf_s("%d",&a) if( ...

  10. jq获取table总行数

    var rows = $('table').find("tr").length;