ko绑定----记录
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绑定----记录的更多相关文章
- moment 和ko 绑定msdate格式的日期值(静态text)
<!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="utf-8& ...
- 【knockout】ko绑定click事件传多个参数,
源:http://knockoutjs.com/documentation/event-binding.html <a href="javascript:;" class=& ...
- knockout 学习使用笔记-----event绑定传参ko属性
在绑定event的时候,需要传入ViewModal 本身的属性值(其实没必要,js直接能获取到,此处为测试相关参数的传递),如果不加(),会将绑定的function传进event(至于为嘛传了个fun ...
- knockoutjs中使用mapping插件绑定数据列表
使用KO绑定数据列表示例: 1.先申请V,T,T2三个辅助方法,方便调试.声明viewModel和加载数据时的映射条件mapping 2.先使用ko.mapping.fromJS()将原来的 ...
- ZigBee绑定细节
ZigBee中的绑定由APS层来管理,除了绑定表管理外,APS层还有组表管理.快速地址查找等服务功能.应用层不能直接调用APS层中的数据服务来传输数据,只能通过AF层封装的AD_DataRequest ...
- Android Framework 记录之二
接着上次的记录,续写. 23.services文件夹 文件 描写叙述 class AlarmManagerService extends IAlarmManager.Stub { //定时管理服务 p ...
- ko.js学习一
一.KO是一个MVVM框架 声明式绑定 (Declarative Bindings):使用简明易读的语法很容易地将模型(model)数据关联到DOM元素上. UI界面自动刷新 (Automatic U ...
- SNF快速开发平台MVC-各种级联绑定方式,演示样例程序(包含表单和表格控件)
做了这么多项目,经常会使用到级联.联动的情况. 如:省.市.县.区.一级分类.二级分类.三级分类.仓库.货位. 方式:有表单需要做级联的,还是表格行上需要做级联操作的. 实现:实现方法也有很多种方式. ...
- Knockout双向绑定
knockout双工绑定基于 observe 模式,性能高.核心就是observable对象的定义.这个函数最后返回了一个也叫做 observable 的函数,也就是用户定义值的读写器(accesso ...
随机推荐
- dialog和dialogFragment的使用及常用问题
今天比较懒,只是列举了一些网址 弹窗之一:dialogFragment的使用 https://blog.csdn.net/sinat_31057219/article/details/76979246 ...
- wx.grid.Grid
# -*- coding: cp936 -*- import wx import wx.grid import wx.lib.gridmovers as gridmovers import pymss ...
- MarkDown和流程图诠释你的代码
写在前面:首先感谢导师-猴哥对我的认可(求多分享点编程经验.工具.多开课),学习编程是一个痛苦和快乐的过程,希望大家共勉 本文介绍MarkDown的基本语法.使用MarkDown画简单的流程图.使用X ...
- Matlab GUI选项卡
1.在这个网址下载一个工具包,里面应该有四个文件:tabselectionfcp.p.tabselectionfcn.m.tabpanel.p和tabpanel.m,显然代码用.p格式进行加密了. 2 ...
- spring@Autowired注入为null的问题,2017年9月14日21点41分记录
这个小问题纠结了三个小时..发出来留个纪念 这是启动项目的时候 这是请求控制器的时候 图1注入的时候是null,图2请求控制器的时候是有的,这是因为图1debug的地方是构造器..autowire ...
- Matlab函数——awgn(高斯噪声)
Matlab函数--awgn awgn 将白色高斯噪声添加到信号中 语法 y = awgn(x,snr) y = awgn(x,snr,sigpower) y = awgn(x,snr,'mea ...
- SQLServer存储过程 实例,很多语法可以以后参考
SQL代码 alter PROCEDURE sp_addnewdtgtype ( ), @dtgdllcontent image, ) ) AS BEGIN ); declare @v_count i ...
- eclipse中copy qualified name使用方式
转载自:原文:https://blog.csdn.net/love20yh/article/details/81328202 copy qualified name得到的结果可以有2类: 1./use ...
- 第一次团队Scrum
长大一条龙之成绩查询 一.项目介绍 本项目的意义在于锻炼团队的scrum能力,加强团队合作能力.确定本项目采用的 ...
- html版本
1.html4/4.01 (SGML) 非常通用的语言,少写闭合,大小写混合了,浏览器都会去容错,就是html怎么写都不会导致浏览器挂掉,大家都觉得这种方式是不科学的 2.XHTML(XML) 基于x ...