dojo
文章平均质量分 58
earthhour
这个作者很懒,什么都没留下…
展开
-
dojo小例子(36)ResizableDialog widget可缩放对话框
给dialog增加缩放功能define([ "dojo/_base/declare", "dijit/_WidgetBase", "dijit/_TemplatedMixin", "dijit/_WidgetsInTemplateMixin", "dojox/layout/ResizeHandle", "dojox/widget/DialogSimple"],function(dec原创 2015-10-16 22:39:47 · 1590 阅读 · 0 评论 -
dojo Grid用法总结
DataGrid、EnhancedGrid都有noDataMessage属性,可以设置这个属性来显示提示信息,例如:noDataMessage : "本单位当前无用户信息!"要让这个属性起作用,store属性不能为null,而应该是size为0,即[]假如,java中的ArrayList给grid提供数据,通过jsonrest,那么当没有数据时,应当return new Array原创 2013-12-25 18:50:00 · 5440 阅读 · 1 评论 -
dojo小例子(27)去除EnhancedGrid Filter插件中的“任何列”选项
EnhancedGrid Filter插件中的列下拉“任何列”选项原创 2014-11-02 09:51:56 · 833 阅读 · 0 评论 -
dijit.form.NumberTextBox常用操作
只能输入任意长度整数<input name="numtext" id="numtext" data-dojo-type="dijit/form/NumberTextBox" data-dojo-props="required: true, pattern: '[0-9]*', constraints:{pattern:'#'}" />原创 2014-05-05 13:22:08 · 2358 阅读 · 0 评论 -
dojo小例子(25)在循环结束后再执行后续语句
var deferred = new Deferred(); results.forEach(function( item, index, items ){ console.log('index',index); if( index === items.length - 1 ){ deferred.r原创 2014-08-19 18:21:16 · 1451 阅读 · 0 评论 -
dojo小例子(26)ObjectStore onFetch方法获取记录总数
require(['dojo/when']);json = new Cache( new JsonRest({ target: "/dojo/rest/echo/listUsers/all" }), new Memory() ); store = new ObjectStore({objectStore: j原创 2014-08-19 18:26:51 · 1244 阅读 · 0 评论 -
dojo小例子(21)grid新增记录放在第一行
grid新增记录有很多种方式,store.newItem(myNewItem);原创 2014-07-14 13:06:15 · 1256 阅读 · 0 评论 -
dojo小例子(16)Grid cell里显示图片,图片取自rest
要在grid cell单元格里显示图片,需要用到formatter,具体用法如下:原创 2014-06-21 18:24:22 · 1709 阅读 · 0 评论 -
dojo小例子(18)为dojox.form.Uploader增加Tooltip功能
Uploader没有ValidationTextBox那种required属性,也就没法实现原创 2014-06-22 12:20:11 · 1456 阅读 · 0 评论 -
dojo小例子(17)iframe上传文件到rest后台,以及乱码问题解决
1、上传文件的form必须是multipart/form-data --> submit reset原创 2014-06-21 22:12:19 · 1976 阅读 · 0 评论 -
dojo小例子(15)给dojo on的事件处理函数传递自定义参数的两种方法
var show = function(e) { Tooltip.show(global.msg, e); } var hide = function(arg) { return function(e) { Tooltip.hide(arg); } } on(registry.byId('idu原创 2014-06-21 16:02:29 · 1807 阅读 · 0 评论 -
dojo小例子(20)动态加载的Select增加一个option空白项
有时我们希望下拉菜单带有提示项,比如默认第一项是“--请选择--”;或者“--全部--”表示包含下拉菜单中的所有条件。有两种实现方式:1、修改store,在其中添加数据;2、修改options,在其中添加option第一种方式:var json = new JsonRest({target: url});json.query().then(function(items){原创 2014-07-07 16:00:48 · 3560 阅读 · 4 评论 -
dojo小例子(24)模拟鼠标选中Tree节点
dojo1.9版本下,以下方法是可行的:原创 2014-07-31 23:12:56 · 1619 阅读 · 0 评论 -
dojo小例子(23)EnhancedGrid、DataGrid当加载完成后获取记录总数
require(["dojo/aspect"]);aspect.after(grid, "_onFetchComplete", function() { if( ! vehicleGrid.getTotalRowCount() ) { listVehicle_hasData.hidden = true; } });原创 2014-07-25 11:42:42 · 1676 阅读 · 0 评论 -
dojo小例子(28)FilteringSelect设置了queryExpr后无法弹出下拉项
FilteringSelect在html文件中能显示下拉项,但放在jsp文件中就无法弹出。FilteringSelect的创建代码如下:var mem = new Memory({ idProperty:"key", data:[ {key:"6",name:"jut1"}, {key:"7",name:"jut2"}, {key:"8",name:"jut3"}, {ke原创 2014-12-13 16:56:47 · 1124 阅读 · 0 评论 -
dojo小例子(30)FilteringSelect至少输入3个字才会触发查询
declare("MyFilteringSelect", FilteringSelect, { // custom min input character count to trigger search minKeyCount: 3, // override search method, count the input length _startSearch: f转载 2015-03-15 23:22:25 · 1003 阅读 · 0 评论 -
关于dojo的dialog和form的最佳用法
在使用dojo中dialog组件时,经常会遇到和form表单一同使用的情况,这时候就需要快速的建立表单,提交表单和修改表单项的功能。关于dojo中组件的写法分为编程的方式和声明方式,声明方式快速但是有时候略显不灵活,编程的方式有时候又会很繁琐。所以需要将两种方式结合起来使用dialog声明使用编程方式,建立表单使用声明方式:目录结构:myModule -|转载 2015-10-16 22:28:05 · 1917 阅读 · 0 评论 -
dojo小例子(35)带校验功能SimpleTextarea
////////////////////////// 带校验功能的SimpleTextarea///////////////////////define(["dojo/_base/declare", "dijit/form/SimpleTextarea", "dijit/form/ValidationTextBox"],function(declare, SimpleTextarea, V原创 2015-09-05 10:25:52 · 850 阅读 · 0 评论 -
dojo小例子(34)带Ajax异步验证功能的ValidationTextBox
define([ "dojo/_base/declare", "dijit/form/ValidationTextBox", "dojo/request"], function(declare, ValidationTextBox, request) { return declare("AjaxValidationTextBox", [ ValidationTextBox ], {原创 2015-09-04 16:51:38 · 705 阅读 · 0 评论 -
dojo小例子(33)dojo.request.script通过JSONP实现跨域
dojo/request/script通过JSONP实现跨域请求数据,需要后台配合返回Javascript代码:require(["dojo/request/script", "dojo/json"],function(script, JSON) { script.get(url, { handleAs: "json", jsonp: 'jsonpca原创 2015-09-04 16:37:22 · 1763 阅读 · 1 评论 -
让dijit DateTextBox不可手动输入
1、dateTextBox.onInput = function(e){return false;};阻止了用户输入,日期控件也可以弹出来2、dijit.form.TextBox.extend( editable: true,_setReadOnlyAttr: function(/*Boolean*/ value){d转载 2015-07-22 15:26:44 · 1066 阅读 · 0 评论 -
dijit TextBox设置为readonly时的特殊背景
dijit TextBox等文本框设置为readOnly后和设置前没有什么区别,从外观无法区分是否只读。所以,做了一个小的调整,使其与可编辑文本框区分开来。调整后,文本框,列表框通过css实现.dijitReadOnly * { background-image: url("./image/lock.png"); background-position: rig原创 2015-07-16 17:44:20 · 755 阅读 · 0 评论 -
data-dojo-mixins
让每个Widget都有插件机制:新的data-dojo-mixins属性插件机制是建立灵活可扩展应用的一个最佳实践,而现在Dojo通过这个全新的属性全面实现了插件机制,让Dojo的Widget在使用时可以灵活决定自己需要的特性。因为这个属性的存在,Widget的开发也将可以更加模块化,每一组功能都能独自定义。在使用的时候,根据具体的使用场景,来决定是否启用此功能。比如,在dojox中提供了转载 2015-05-05 12:37:32 · 1600 阅读 · 0 评论 -
浅谈dojox中的一些小工具
原文:http://www.infoq.com/cn/articles/zx-dojox-gadgets不知道大家在使用dojo各种空间的同时,有没有关注一下dojo里面的各种工具包?有些工具包可能并不显眼,但是对我们的软件产品或者项目可能帮助甚 大,今天我简单说说dojo extension(dojox)控件库里面的两个非常有用的工具包 --- dojox.timing 和 dojo转载 2015-05-12 15:43:36 · 547 阅读 · 0 评论 -
dojo小例子(29)FilteringSelect在IE8下对输入法(IME)无响应不弹出suggest
IE8下,FilteringSelect输入汉字不能触发Ajax查询并显示下拉列表。经试验,输入英文、字母能够触发,输入汉字不能触发,但汉字随后输入空格能够触发Ajax查询。输入汉字随后按回车不能触发Ajax查询。查找原因,是由于在ie8下,汉字输入后,输入框的_processInput事件无法触发,从而不能获取输入内容。但IE8可以支持onpropertychange从而获取输入的任何内原创 2015-03-10 22:13:19 · 806 阅读 · 0 评论 -
dojo小例子(32)dgrid增加filter搜索功能2
HTML:12345<form id="filterForm"> Filter by Last Name: "text"name="filter"> <button type="submit">Filter<div id="grid">转载 2015-03-28 18:17:40 · 944 阅读 · 0 评论 -
dojo小例子(31)dgrid增加filter搜索功能
<input id="filter" data-dojo-type="dijit/form/TextBox" data-dojo-props=" placeHolder: 'filter by name', intermediateChanges:true " s转载 2015-03-28 18:02:30 · 1117 阅读 · 0 评论 -
dojo笔记——持续添加中
1、如果function的参数不指明dojo类,则在使用时要带类的全路径new dojo.store.JsonRest,如require([ "dojo/store/JsonRest" ], function(){ var objectStore = new dojo.store.JsonRest({ target: "/dojo/rest/echo/getDistrict"原创 2013-06-04 19:17:04 · 3176 阅读 · 0 评论 -
dojo小例子(22)自定义dijit Tree的节点图标
tree.getIconClass = function (item, /*Boolean*/ opened) {var type = item.type.toLowerCase(); if (type === "folder") { return opened ? "dijitFolderOpened" : "dijitFolderClosed"; } else {转载 2014-07-23 21:32:39 · 2340 阅读 · 0 评论 -
dojo小例子(19)EnhancedGrid分页描述description调整
EnhancedGrid分页描述第 ${2} - ${3} 个(共 ${1} ${0})原创 2014-07-03 19:06:37 · 790 阅读 · 0 评论 -
dojo小例子(1):通过动态替换dijit/Dialog的内容,告诉用户表单提交进度(正在提交、成功、失败)
var dlg = dijit.byId("submitMsgDialog"); dlg.titleBar.style.display='none'; // 不显示标题栏 dlg.set("content", "正在提交..."); dlg.show(); 。。。。。。dlg.set("content", "提交成功!"); dlg.titleBar.style.displa原创 2014-03-01 18:59:01 · 1403 阅读 · 0 评论 -
dojo小例子(6)页面打开后,请求数据,把反馈数据回填页面
require([ "dojo/parser", "dojo/domReady!"], function(parser){ parser.parse();});require(["dijit/form/Form", "dijit/form/ValidationTextBox", "dijit/form/TextBox", "dijit/form/Select", "dijit/for原创 2014-03-02 10:40:49 · 1368 阅读 · 0 评论 -
dojo小例子(2):dojox/widget/Standby,当前页面不可编辑,模拟进度提示
实现效果:显示loading图片-》2秒后替换为“完成”-》2秒后消失。下次调用show()函数,仍然能按上述顺序显示。 target写谁的id,就阻塞谁。require(["dojox/widget/Standby"]);function show(){ var lay = dijit.byId("standby"); lay.set("centerIndicator","imag原创 2014-03-01 19:10:52 · 1477 阅读 · 0 评论 -
dojo小例子(4)DataGrid对动态数据的增删
require(['dojo/_base/array', 'dojo/_base/event', 'dojo/on', 'dojox/grid/DataGrid', 'dojo/store/JsonRest', 'dojo/store/Memory', 'dojo/store/Cache', 'dojo/data/O原创 2014-03-01 21:39:42 · 2153 阅读 · 0 评论 -
dojo小例子(3)DataGrid对静态数据的增删
@import '../dojo-release-1.9.1/dojox/grid/resources/claroGrid.css';/*Grid needs an explicit height by default*/#gridDiv { height: 15em;} require(['dojo/_base/array', 'dojo/_base/l转载 2014-03-01 21:14:12 · 1602 阅读 · 0 评论 -
data-dojo-id, dijit/registry.byId() and dojo/dom.byId()
registry.byId 和 dom.byId 经常混淆, 尤其是初次使用者。registry.byId 应当用于: 当你想直接引用某个部件的JavaScript对象以及访问这个部件的方法时。dom.byId 应当用于:当你想直接访问一个DOM节点。下面这个ContentPane部件有一个id属性(标准HTML属性)以及一个data-dojo-id属性(dojo 特有id属性):翻译 2014-02-28 12:33:50 · 3372 阅读 · 0 评论 -
使dojo grid属性query中的参数作为请求url的一部分
使dojo>需要结合使用JsonRest实现。dojo代码:require([ "dojo/store/JsonRest", "dojo/store/Memory", "dojo/store/Cache", "dojox/grid/DataGrid", "dojo/data/ObjectStore", "dojo/quer原创 2013-12-25 19:06:00 · 1357 阅读 · 0 评论 -
dojo EnhancedGrid的两种实现方式对比
后台测试数据初始化:static List arrD = new ArrayList(); static{ for( int i = 0; i < 51; i ++ ){ User u = new User(); u.setId( i ); u.setName( "test"+i ); if( i % 2 == 0 ){ u.setDesc( "dev原创 2013-12-08 19:15:31 · 3230 阅读 · 0 评论 -
dojo lazy Tree,使用JsonRest获取节点数据
创建html标签创建dojo代码 require([ "dojo/store/JsonRest", "dijit/Tree", "dijit/tree/ObjectStoreModel", "dojo/domReady!" ], function(JsonRest, Tree, ObjectStoreModel){ var原创 2013-07-30 14:12:29 · 2331 阅读 · 0 评论 -
dijit.Tree(1)——点击节点时执行一些定制操作
var tree = new Tree({ model: model, //openOnClick:true, persist: false}, "divTree"); tree.startup();tree.on("click",function(object){ alert(object.id+':'+object.name); // 执行一些其他操作});原创 2013-06-07 17:10:41 · 1313 阅读 · 0 评论