摘要:
前言options绑定控制什么样的options在drop-down列表里(例如: 该参数是一个数组(或者observable数组)。对每个item,KO都会将它作为一个 添加到这可以说是Multi-select listDrop-down list展示的任意JavaScript对象,不仅仅是字符串Destination country: Your country: You have chosen a country with population . optionsCaption有时候,默认情况下不想选择任何option项。但是single-... 阅读全文
摘要:
前言checked绑定是关联到checkable的form表单控件到view model上 - 例如checkbox()或者radio button() 。当用户check关联的form表单控件的时候,view model对应的值也会自动更新,相反,如果view model的值改变了,那控件元素的check/uncheck状态也会跟着改变。注:对text box,drop-down list和所有non-checkable的form表单控件,用value绑定来读取和写入是该元素的值,而不是checked绑定。简单示例示例代码Send me spam: 运行之后对于checkbox,当参数为.. 阅读全文
摘要:
前言value绑定是关联DOM元素的值到view model的属性上。主要是用在表单控件,和上。当用户编辑表单控件的时候, view model对应的属性值会自动更新。同样,当你更新view model属性的时候,相对应的元素值在页面上也会自动更新。注:如果你在checkbox或者radio button上使用checked绑定来读取或者写入元素的 checked状态,而不是value 值的绑定。简单示例代码如下对两个input进行value的属性绑定Login name: Password: 运行后效果为注意密码的type为passwordKO设置此参数为元素的value值。之前的值将... 阅读全文
摘要:
enable绑定enable绑定使DOM元素只有在参数值为 true的时候才enabled。在form表单元素input,select,和textarea上非常有用。enable简单示例enableBind I have a cellphone Your cellphone number: 这个例子里,“Your cellphone number”后的text box 初始情况下是禁用的,只有当用户点击标签 “I have a cellphone”的时候才可用。声明DOM元素是否可用enabled。非布尔值会被解析成布尔值。例如0和null被解析成false,21和非... 阅读全文
摘要:
event绑定event绑定在DOM元素上添加指定的事件句柄以便元素被触发的时候执行定义的JavaScript 函数。大部分情况下是用在keypress,mouseover和mouseout上。简单示例 Mouse over me Details 就是通过在一个div上绑定两个事件,一个鼠标点上去的mouseover让下面的div内容显示出来,另一个是鼠标移出mouseout让下面的div内容再隐藏。你可以声明任何JavaScript函数 – 不一定非要是view model里的函数。你可以声明任意对象上的任何函数,例如: event:... 阅读全文
摘要:
前言click绑定在DOM元素上添加事件句柄以便元素被点击的时候执行定义的JavaScript 函数。大部分是用在button,input和连接a上,但是可以在任意元素上使用。简单示例ClickBind You've clicked times Click me 预览效果 每次点击按钮的时候,都会调用incrementClickCounter()函数,然后更新自动更新点击次数。你可以声明任何JavaScript函数 – 不一定非要是view model里的函数。你可以声明任意对象上的任何函数,例如: someObject.someFunction。View model上的函数在... 阅读全文
摘要:
Style绑定style绑定是添加或删除一个或多个DOM元素上的style值。比如当数字变成负数时高亮显示,或者根据数字显示对应宽度的Bar。(注:如果你不是应用style值而是应用CSS class的话,请参考CSS绑定。)Style简单示例 Profit Information 简单示例代码,运行后发现为红色的字体当currentProfit 小于0的时候div的style.color是红色,大于的话是黑色。该参数是一个JavaScript对象,属性是你的style的名称,值是该style需要应用的值。你可以一次设置多个style值。例如,如果你的view model有一个叫i... 阅读全文
摘要:
前言建造者模式,将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。结构图Builder是为创建一个Product对象的各个部件指定的抽象接口。ConcreteBuilder是具体的建造者,实现Builder接口,构造和装配各个部件。可以有多个不同的具体的建造者。Product具体产品角色Director就是构建一个使用Builder接口的对象。代码实现首先来看一下产品类 public class Product { List parts = new List(); public void Add(string part) ... 阅读全文
摘要:
Html绑定html绑定到DOM元素上,使得该元素显示的HTML值为你绑定的参数。如果在你的view model里声明HTML标记并且render的话,那非常有用。简单示例 这样Html 的EM标签就会显示于此KO设置该参数值到元素的innerHTML属性上,元素之前的内容将被覆盖。如果参数是监控属性observable的,那元素的内容将根据参数值的变化而更新,如果不是,那元素的内容将只设置一次并且以后不在更新。如果你传的是不是数字或者字符串(例如一个对象或者数组),那显示的文本将是yourParameter.toString()的等价内容。关于HTML encoding因为该绑定设置元素的i 阅读全文
摘要:
1.设计模式之前奏(UML类图) 2.设计模式之一(单例模式) 3.设计模式之二(简单工厂模式)4.设计模式之三(工厂方法模式)5.设计模式之四(抽象工厂模式第一回合)6.设计模式之四(抽象工厂模式 第二回合)7.设计模式之四(抽象工厂模式 第三回合)8.设计模式原则(单一、开放封 闭、里氏代换、依赖倒转、迪米特法则五大原则)9.设计模式之五(策略模式)10.设计模式之六(装饰模式)11.设计模式之七(代理模式)12.设计模式之八(原型模式) 13.设计模式之九(模版方法模式)14.设计模式之十(外观模式) 阅读全文