MVC+JQuery开发B/S系统:②表单绑定
2009-09-14 00:00:00 来源:WEB开发网逻辑比较复杂的Form绑定起来比较麻烦,这些都是要自己写代码。而简单的我们可以写一个通用的进行处理。不需要反复的 xxx.Text = "xxx" ..
MVC有自己的自动映射功能,我们这里用jQuery来遍历Controls进行绑定。
如果用过asp开发过系统的人都知道以前取表单的值都是request.form("controlName"),用到的是name而不是id。
所以我们的表单在制作的时候元素的Name值不能没有。 为了能够写通用的方法,我们约定所有的元素的name 是 "cName" 格式 ,"c"+"字段名",id自己随便。
由于Js的Dictionary区分大小写,所以我们这些名字也对大小写敏感,包括上一节的列表绑定都是这样。
Code
$.fn.bindForm = function(model) {
if (model == undefined || model == null) {
return;
}
var formId = this.attr("id");
$("input,textarea,select", "#" + formId).each(function() {
var cname = $(this).attr("name");
var cid = $(this).attr("id");
if (cname == "")
return;
if (cid == "") {
cid = $(this)[0].tagName + "[name='" + cname + "']";
$(this).attr("id", cname);
} else
cid = "#" + cid;
$(cid).bindControl(model[cname.replace("c", "")], formId);
});
return this;
编缉推荐阅读以下文章
- MVC+Jquery开发B/S系统:③表单提交
- MVC+Jquery开发B/S系统:①列表绑定
- ››jquery .ajax方法 异步表单,接收服务器返回的数据...
- ››jquery 添加\删除 cookie
- ››jquery 正则表达式判断是否为正确邮箱格式
- ››jQuery EasyUI 数字框(NumberBox)用法
- ››JQuery中对option的添加、删除、取值
- ››JQuery实现下拉,单选,复选三大控件方法,
- ››jquery实现判断输入文字个数的代码
- ››jQuery bxCarousel实现图片滚动切换效果
- ››jQuery弹性滑动导航菜单
- ››jquery实现全选反选功能
- ››jQuery 屏蔽单个元素使用户无法点击
- ››jquery做复选框的全选、全部选、反选更加简单
更多精彩
赞助商链接