传统的client side js MVC 结构:
Model:
json object - mapping with PO from server side
View:
HTML + CSS
Controller:
Page object - 负责页面初始化逻辑(验证、事件绑定、json数据渲染到DOM),提交时,获取DOM的数据组装json。
Concrete Javascript Pattern :
把status 和 behavior 直接绑定到DOM element上。
jquery concrete framework:
http://github.com/hafriedlander/jquery.concrete
http://github.com/nkallen/effen/
前者42k,后者0.8k。
与直接在DOM element object上添加status or behavior相比,框架的好处是可以批量添加。
用例:
对于autocomplete组件,formatted data = data name; saved data= data id;
之前有一个实现是为了save data id,多加了一个 input hidden.
如果是concrete js pattern, 可以在这个input element 上直接保存数据。
effen + jquery.autocomplete test:
$('body').append('<div id="dom_test"><input id="month"/></div>');
var monthInput = $("#month");
monthInput.fn({
dataPair: function(){
if (arguments.length == 0) {
return this._data;
}
else {
this._data = arguments[0];
}
},
_data: []
});
monthInput.autocomplete(months, {
minChars: 0,
max: 12,
autoFill: true,
mustMatch: true,
matchContains: false,
scrollHeight: 220,
formatItem: function(data, i, total){
if (data[0] == months[new Date().getMonth()])
return false;
return data[0].substring(0, 3);
},
formatResult: function(row){
return row[1];
}
});
monthInput.result(function(event, data, formatted){
var _data = data[0].split("|");
monthInput.fn("dataPair", _data);
console.dir(monthInput.fn("dataPair"));
});
分享到:
相关推荐
Effective JavaScript is organized around 68 proven approaches for writing better JavaScript, backed by concrete examples. You’ll learn how to choose the right programming style for each project, ...
Effective JavaScript is organized around 68 proven approaches for writing better JavaScript, backed by concrete examples. You’ll learn how to choose the right programming style for each project, ...
Concrete Mathematics
concrete_data.mat
You will gain a concrete understanding of variable scoping, loops, and best practices on using types and data structures, as well as the coding style and recommended code organization patterns in ...
Reinforced concrete structures 混凝土结构设计经典教材
标题中的"Concrete_Damage (2)_混凝土_混凝土损伤_concretedamage_CONCRETE_混凝土塑性损伤MAT"表明这是一个关于混凝土损伤模拟的MATLAB程序,主要用于研究混凝土在受力过程中的损伤行为。在这个过程中,混凝土的...
"CONCRETE"在这里可能指的是一个特定的字体家族或者字体设计项目,其名称寓意着坚实、稳固,可能具有现代感或工业风格。 CONCRETE字体可能包含一系列不同风格的字形,如粗体、细体、斜体等,以满足设计者在不同场景...
根据提供的文件信息,《Concrete Mathematics》是Donald E. Knuth、Ronald L. Graham和Oren Patashnik三位作者所著的一本关于数学及其在计算机科学中的应用的书籍。本书是计算机科学数学基础教育的经典教材,并且是...
You will gain a concrete understanding of variable scoping, loops, and best practices on using types and data structures, as well as the coding style and recommended code organization patterns in ...
《ConcreteMath》是由世界著名的计算机科学家、斯坦福大学教授Donald Knuth所著的一部经典著作,专注于具体数学领域的深入探讨。这本书将数学理论与实际应用相结合,为读者提供了丰富的数学工具,广泛应用于计算机...
Concrete5 是一个全新的php内容管理软件(cms)。它开源、免费,是一个非常好用的免费php内容管理系统。且你可以直接在页面上编辑、排版!而不是像wordpress之类的,需要控制模板或进入编辑器来编辑文字。另外,他的...
Concrete5 是一个全新的php内容管理软件(cms)。它开源、免费,是一个非常好用的免费php内容管理系统。且你可以直接在页面上编辑、排版!而不是像wordpress之类的,需要控制模板或进入编辑器来编辑文字。另外,他的...
Concrete Mathematics第二版
concrete5是一个开源的内容管理系统(CMS),特别适合于那些想要在不深入了解编程的情况下创建和管理网站的用户。本篇《concrete5初学者指南》(第二版,2013年4月)是Remo Laubacher所著,是一本专门针对初学者的...
[Packt Publishing] concrete5 初学者指南 第1版 (英文版) [Packt Publishing] concrete5 Beginner's Guide 1st Edition (E-Book) ☆ 出版信息:☆ [作者信息] Remo Laubacher [出版机构] Packt Publishing ...
### *MAT_Concrete_Damage_Rel3 参数解析 #### 基础概述 *MAT_Concrete_Damage_Rel3 是 LS-DYNA 中用于模拟混凝土材料在动态载荷作用下的损伤行为的一种材料模型。此模型考虑了混凝土在不同应力状态下的损伤演化...
You develop concrete understanding of variable scoping, loops, and best practices on using types and data structures, as well as the coding style and recommended code organization patterns in ...