1.绑定变量

globalData = ko.observable({item:{}});

2.绑定html

ko.applyBindings(globalData, document.getElementById('_bindDemo'));
注:这里document可以不写,则默认绑定全局

3.对数据进行赋值,达到刷新页面的效果

globalData({item:data});
注:因为定义的item为空值,这里定义了一个data为item赋值

4.对–对象–使用foreach循环

<tbody data-bind="foreach: items">
<tr>
<td data-bind="text: framework"></td>
<td data-bind="text: stars"></td>
</tr>
</tbody>
注:这里的items一般使用Ajax对其赋值,Ajax返回JSON格式数据,当作为List集合返回时,可以绑定到items
success: function(data, textStatus, jqXHR){
globalData({items:data});
}

5.绑定普通数组循环到html

    <!--ko foreach:item.arr-->
<div><span>随机数:</span><span data-bind="text: $data"></span></div>
<!--/ko-->
使用注解简写循环的方式,$index--表示索引,$data--表示具体数据

6.小demo

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script type="text/javascript" src="js/knockout-3.4.0.js" ></script>
</head>
<body>
<input type="button" value="dian" onclick="randomAve(0.3,0.3009)" />
<div>
<!--ko foreach:item.arr-->
<div><span>随机数:</span><span data-bind="text: $data"></span></div>
<!--/ko-->
<div><span>总和:</span><span data-bind="text: item.sum"></span></div>
<div><span>平均值</span><span data-bind="text: item.aveNum"></span></div>
<div><span>误差:</span><span data-bind="text: item.errorValue"></span></div>
</div>
<script type="text/javascript">
globalData = ko.observable({item:{}});
ko.applyBindings(globalData);
var data = {}; function randomNum(min, max){
num = Math.floor((min + Math.random() * ( (max+0.0001) - min)) * 10000) / 10000;
return num;
} function averageValue(arr){
data.sum = arr[0] + arr[1] + arr[2];
data.aveNum = Math.floor((data.sum / data.arr.length ) * 10000) / 10000;
return data.aveNum;
} function randomAve(min, max){
data.arr = [];
for (var i = 0; i < 3 ; i++) {
data.arr[i] = randomNum(min, max);
}
data.aveNum = averageValue(data.arr);
errorValue(min);
} function errorValue(num){
data.errorValue = (num - data.aveNum) / (data.aveNum * 100);
console.log(data);
globalData({item:data});
} </script>
</body>
</html>

ko绑定----记录的更多相关文章

  1. moment 和ko 绑定msdate格式的日期值(静态text)

    <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="utf-8& ...

  2. 【knockout】ko绑定click事件传多个参数,

    源:http://knockoutjs.com/documentation/event-binding.html <a href="javascript:;" class=& ...

  3. knockout 学习使用笔记-----event绑定传参ko属性

    在绑定event的时候,需要传入ViewModal 本身的属性值(其实没必要,js直接能获取到,此处为测试相关参数的传递),如果不加(),会将绑定的function传进event(至于为嘛传了个fun ...

  4. knockoutjs中使用mapping插件绑定数据列表

    使用KO绑定数据列表示例:   1.先申请V,T,T2三个辅助方法,方便调试.声明viewModel和加载数据时的映射条件mapping    2.先使用ko.mapping.fromJS()将原来的 ...

  5. ZigBee绑定细节

    ZigBee中的绑定由APS层来管理,除了绑定表管理外,APS层还有组表管理.快速地址查找等服务功能.应用层不能直接调用APS层中的数据服务来传输数据,只能通过AF层封装的AD_DataRequest ...

  6. Android Framework 记录之二

    接着上次的记录,续写. 23.services文件夹 文件 描写叙述 class AlarmManagerService extends IAlarmManager.Stub { //定时管理服务 p ...

  7. ko.js学习一

    一.KO是一个MVVM框架 声明式绑定 (Declarative Bindings):使用简明易读的语法很容易地将模型(model)数据关联到DOM元素上. UI界面自动刷新 (Automatic U ...

  8. SNF快速开发平台MVC-各种级联绑定方式,演示样例程序(包含表单和表格控件)

    做了这么多项目,经常会使用到级联.联动的情况. 如:省.市.县.区.一级分类.二级分类.三级分类.仓库.货位. 方式:有表单需要做级联的,还是表格行上需要做级联操作的. 实现:实现方法也有很多种方式. ...

  9. Knockout双向绑定

    knockout双工绑定基于 observe 模式,性能高.核心就是observable对象的定义.这个函数最后返回了一个也叫做 observable 的函数,也就是用户定义值的读写器(accesso ...

随机推荐

  1. matlab练习程序(单源最短路径Dijkstra)

    图的相关算法也算是自己的一个软肋了,当年没选修图论也是一大遗憾. 图像处理中,也有使用图论算法作为基础的相关算法,比如图割,这个算法就需要求最大流.最小割.所以熟悉一下图论算法对于图像处理还是很有帮助 ...

  2. SQL Server中的高可用性----复制

    在本系列文章的前两篇对高可用性的意义和单实例下的高可用性做了阐述.但是当随着数据量的增长,以及对RTO和RPO要求的严格,单实例已经无法满足HA/DR方面的要求,因此需要做多实例的高可用性.本文着重对 ...

  3. haproxy学习——安装(一)

    安装包:haproxy-1.5.4.tar.gz (挺小的,大约1.3M) ①.首先要sz到本地虚拟机上(centos-6.5),tar zxvf haproxy-1.5.4.tar.gz,完成解压. ...

  4. VC6.0静态编译注意事项

    选择静态编译(工程->常规->Microsoft基础类->使用MFC作为静态链接库)的时候,会报错:MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: ...

  5. C# winform 跨线程修改界面

    我们可以使用invoke和bengininvoke invoke同步执行一个委托 begininvoke异步执行一个委托

  6. Document flow API in SAP CRM and C4C

    Document flow API in CRM 以一个具体的例子来说明.在Appointment的Overview page上能看见一个名叫Reference的区域,这里可以维护一些其他的业务文档的 ...

  7. 【转】 ios的手势操作之UIGestureRecognizer浅析

    一.概述 iPhone中处理触摸屏的操作,在3.2之前是主要使用的是由UIResponder而来的如下4种方式: - (void)touchesBegan:(NSSet *)touches withE ...

  8. HashMap中的equals和hashCode

    HashMap的存储方式 HashMap的实现方式是数组链,不同的对象根据其哈希码(hashCode方法的返回值)找到对应的数组下标,然后存入数组.不同的对象有相同的哈希码时怎么办?这就由数组链中的链 ...

  9. UVA - 136 Ugly Numbers(丑数,STL优先队列+set)

    Ugly numbers are numbers whose only prime factors are 2, 3 or 5. The sequence 1, 2, 3, 4, 5, 6, 8, 9 ...

  10. PAT1089. Insert or Merge

    PAT1089. Insert or Merge 题目大意 给定一个初始序列src, 一个排序当中的序列tar, 问排序方式是 Insert Sort, 或者 Merge Sort. 并输出下一次迭代 ...