一个简单的knockout.js 和easyui的绑定

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Basic DataGrid - jQuery EasyUI Demo</title>
<link rel="stylesheet" type="text/css" href="easyui.css">
<link rel="stylesheet" type="text/css" href="icon.css">
<link rel="stylesheet" type="text/css" href="demo.css">
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript" src="jquery.easyui.min.js"></script>
<script type="text/javascript" src="knockout-2.2.1.js"></script>

<script type="text/javascript">
//预编译函数, 可以定义在另一个js文件中
(function(){
//自定义绑定
ko.bindingHandlers.mydatagrid={
update:function (element, viewModelAccessor, allBindings) {
//得到当前绑定的model
var viewModel = viewModelAccessor();
$(element).datagrid({
url:viewModel.url,
columns:viewmodel.columns
})
}
}

})();
</script>

</head>
<body>
<h2>Basic DataGrid</h2>
<p>The DataGrid is created from markup, no JavaScript code needed.</p>
<div style="margin:20px 0;"></div>

<table id="tt" title="Basic DataGrid" style="width:700px;height:250px" data-bind="mydatagrid:grid">
</table>

<script type="text/javascript">
var viewmodel = function() {
this.grid={
url:‘mydata.json‘, 
columns:[
{field:‘code‘,title:‘Code‘,width:100}, 
{field:‘name‘,title:‘Name‘,width:100}, 
{field:‘price‘,title:‘Price‘,width:100,align:‘right‘}

}
};
ko.applyBindings(new viewmodel());

<!--easyui的写法
$(‘#tt‘).datagrid({ 
url:‘mydata.json‘, <!--跨域请求 在chrome的快捷方式上添加 --allow-file-access-from-files --> 
columns:[[ 
{field:‘code‘,title:‘Code‘,width:100}, 
{field:‘name‘,title:‘Name‘,width:100}, 
{field:‘price‘,title:‘Price‘,width:100,align:‘right‘} 
]] 
}); 
-->

</script>
</body>
</html>

时间: 2024-10-11 04:47:22

一个简单的knockout.js 和easyui的绑定的相关文章

一个简单用原生js实现的小游戏----FlappyBird

这是一个特别简单的用原生js实现的一个小鸟游戏,比较简单,适合新手练习 这是html结构 <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title></title> </head> <body> <div id="game"> <div id="b

从一个简单例子谈谈js的捕获与冒泡问题

事件冒泡与事件捕获,下面是js中捕获与冒泡的一个实例: html结构: <div id="tianzi"> <div id="tianzi1"> <div id="tianzi2"> <div id="tianzi3"> </div> </div> </div> </div> css样式控制: #tianzi{ width: 400

封装一个简单的原生js焦点轮播图插件

轮播图实现的效果为,鼠标移入左右箭头会出现,可以点击切换图片,下面的小圆点会跟随,可以循环播放.本篇文章的主要目的是分享封装插件的思路. 轮播图的我一开始是写成非插件形式实现的效果,后来才改成了封装成插件的形式. 首先要明白轮播图的实现原理和基本布局,大概就是外面有一个容器包裹着(通常是div),容器设置宽高,以及overflow为hidden,超出宽高部分隐藏, 容器里面又包含着另一个容器,包裹着所有的图片,宽为所有图片的总宽度,ul的position为absolute,通过改变ul的left

教你做一个简单的highchart.js图表

1.js里的写法: $(function () { draw();//打开页面时呈现 })function draw() { var arrLoginName = [], arrLiveness = [];//highchart能读出的都是数组,因此,你的定义的参数都应是数组 var form = $("form").serialize(); $.ajax({ url: "/FFManager/Statistics/GetCustomerIncome/", type

一个简单的倒计时js插件

接收的参数end是必须传的,格式是/分隔的日期字符串,start是可选的,不传就是从现在开始倒计时,callback也是可选的,到倒计时接收时执行自定义的函数. countdown({ 'end':'2015/9/1 17:12:00', 'callback':function () { document.getElementById('countdown').innerHTML = 'the end!'; } }); (function (){ function countdown(confi

knockout.js的简介和简单使用

1.knockout简介knockout是一个轻量级的UI类库,通过MVVM模式使JavaScript前端UI简单化knockout有四大重要概念:1)声明式绑定:使用简明移读的语法很容易地将模型(model)数据关联到dom元素上.2)UI界面自动刷新:当宁的模型状态(model state)改变时,您的UI将自动更新3)依赖跟踪:为转变和联合数据,在你的模型数据之间隐式建立关系4)模板:为你的模型数据快速编写复杂的可嵌套的UI 2.knockout特性和好处特性:优雅的依赖跟踪声明式绑定灵活

MVC、MVP、MVVM、Angular.js、Knockout.js、Backbone.js、React.js、Ember.js、Avalon.js 概念摘录

转自:http://www.cnblogs.com/xishuai/p/mvc-mvp-mvvm-angularjs-knockoutjs-backbonejs-reactjs-emberjs-avalonjs.html MVC MVC(Model-View-Controller),M 是指业务模型,V 是指用户界面,C 则是控制器,使用 MVC 的目的是将 M 和 V 的实现代码分离,从而使同一个程序可以使用不同的表现形式. 交互方式(所有通信都是单向的): View 传送指令到 Contro

NodeJS 入门 - 1 搭建简单的node js应用

关于如何搭建一个简单的 node.js应用,找到了如下几种攻略. 从零搭建node.js服务 搭建一个node.js+express.js服务 从零搭建一个简单的node.js + express.js + handlerbars服务 从零搭建node.js服务 摘自Node即学即用 Code如下: $ node > var http = require('http'); > http.createServer(function(req, res){ res.writeHead(200, {'

Knockout学习之表单绑定器(下)

“hasFocus”绑定 hasFocus绑定器会将DOM元素的焦点状态与视图模型中的属性相关联,当你设置视图模型中关联的属性为true或false后,将能够设置关键的DOM元素是否获得焦点. 比如下面的例子将会演示如何使用通过代码设置焦点,并且当关联的标签获得焦点后显示一段文本: 1 <div> 2 <input type="text" data-bind="hasfocus: focusState" /> 3 <button typ