dojo/dom-form】的更多相关文章

dojo/dom模块作为一个基础模块,最常用的就是byId方法.除此之外还有isDescendant和setSelectable方法. dom.byId(myId)方法:   各种前端类库都免不了与DOM节点打交道,操作DOM的方法千变万化最终还是要回到原生的那几个方法中,因为类库再快也快不过原生.所以在dom.byId方法中,还是要依靠document.getElementById('myId')方法.假如没有ie,假如不要考虑兼容性,getElementById方法可以完全满足我们的需求.但…
dojo/dom源码学习   dojo/dom模块作为一个基础模块,最常用的就是byId方法.除此之外还有isDescendant和setSelectable方法. dom.byId(myId)方法:   各种前端类库都免不了与DOM节点打交道,操作DOM的方法千变万化最终还是要回到原生的那几个方法中,因为类库再快也快不过原生.所以在dom.byId方法中,还是要依靠document.getElementById('myId')方法.假如没有ie,假如不要考虑兼容性,getElementById…
In this tutorial, you'll learn about how to use Dojo to manipulate the DOM in a simple, cross-browser way. Using basic DOM knowledge and only a few Dojo functions, you will be able to efficiently create, read, update and delete elements in the page o…
dom.byId require(["dojo/dom", "dojo/domReady!"], function(dom) { var one = dom.byId("one"); function setText(node, text){ node = dom.byId(node); node.innerHTML = text; } setText(one, "One has been set"); setText(&qu…
官方教程:Dojo DOM Functions对dom的使用,需要引用包dojo/dom.1.获取节点,dom.byIdbyId中既可以传递一个字符串,也可以传递一个节点对象 require(["dojo/dom", "dojo/domReady!"], function(dom) {           function setText(node, text){         node = dom.byId(node);//通过已有对象         node…
众所周知,在dojo里存在dom和widget两个类型,dom指的是普通类型的HTML元素,包括各种类型的标签.按钮.输入框等等,而widget指的是dojo自身所带的模板,同时也包括按钮.输入框等等.那么在新建两个不同的按钮时,它们会不会存在什么差异呢?实验结果如下: (1)先在html中新建两个不同类型的button按钮 <html><head> <meta charset="UTF-8"> <title>parser</tit…
DOM Manipulation You might be seeing a trend here if you have gotten this far in the tutorial, in that not only has Dojo abandoned its dependency on the global namespace and adopted some new patterns, it has also broken out some of "core" functi…
前言: 前面两章讲了dojo的基本规范和配置,当然这个配置不是必须的,当你有这需求的时候就可以用到dojo的config配置. dojo的所有js都是符合AMD规范进行异步加载的:http://blog.csdn.net/eguid_1/article/details/52083016 并且详细阐述了dojo的config设置:http://blog.csdn.net/eguid_1/article/details/52092016 缀述: 这章开始真正讲解dojo的所有基本操作,包含dom.q…
有的web页面总是得等DOM加载完成才能继续执行功能,例如,待页面DOM加载完成后,才能在DIV上进行渲染图形. Dojo提供了这个功能的模块,叫domReady,但是由于它很特殊,就在结尾加了个叹号!. 1. 页面组织 这个例子很简单,就直接在script里写js代码了 html部分: <h1 id="greeting">Hello</h1> js部分(记得添加引用): <script src="https://cdn.bootcss.com/…
1.使用dom-style的set方法,可以直接设置dom元素的样式属性,这和使用dom元素的style属性效果一样. 2.使用dom-class的replace方法可以替换某个dom元素的样式,add方法可以为dom元素增加样式,remove方法可以移除dom元素的样式 require(["dojo/dom", "dojo/window", 'dojo/dom-style', 'dojo/topic', "dojo/dom-class", &q…
  1.Dojo学习地址 2.Dojo快速开始 2.1.Dojo引入 2.2.指定Dojo模块的位置 2.3.模块加载require 3.查找Dom节点 3.1.根据id查找dom节点 3.2.根据css选择器查找dom节点 3.3.根据id查找widget 4.Event 注册监听器 5.声明式使用Dojo 1.Dojo学习地址 Dojo 下载: http://dojotoolkit.org/download/ Dojo参考文档 http://dojotoolkit.org/reference…
In this tutorial, we will be exploring dojo/on and how Dojo makes it easy to connect to DOM events. We will also explore Dojo's publish/subscribe framework: dojo/topic. 在本教程中,我们将会探讨dojo/on模块,使用该模块可以更简单的关联DOM事件.我们也会探讨dojo的publish和dubcribe框架:dojo/topic…
http://dojotoolkit.org/documentation/tutorials/1.10/modern_dojo/index.html 你可能已经不用doio一段时间了,或者你一直想保持你基于dojo1.6的老代码在1.10下能够正确运行,但却不知道应该怎么做.你一直在听说“AMD”和"baseless"等概念,但却不知道如何开始学习这些,这篇教程会帮你了解这些. 开始 从dojo的1.7版本开始,dojo Toolkit有了重大的变化,并朝着更加先进的架构模式发展.do…
一.dojo/dom    该模块定义了Dojo Dom API,主要有以下几种用法:    1.dom.byId();(相当于document.getElementById())    ①最直接的用法:    require(["dojo/dom"], function(dom){        var node = dom.byId("someNode");    });    ②它是domNode,可以继续操作属性(也就是可以直接后面"."…
web2.0时代,ajax技术成为整个前端开发领域的基石.大部分的书籍.博客由此切入来介绍前端类库与框架,所以dojo往往只被当做一个ajax类库来介绍,然而仅仅以此来定位dojo,无异于管中窥豹.对于dojo来讲,关于ajax的封装只是dojo框架中的一小部分,dojo的定位是一个从前往后一手包办的企业级开发框架. 目前在模块化开发盛行的前端开发中,requireJs无疑是最受推崇的一位.只是很少有人知道requireJs出自dojo框架,dojo加载器的开发者就是requireJs的作者.曾…
在进入源码分析前,我们先来点基础知识.下面这张图画的是元素的盒式模型,这个没有兼容性问题,有问题的是元素的宽高怎么算.以宽度为例,ff中 元素宽度=content宽度,而在ie中 元素宽度=content宽度+border宽度+padding宽度.IE8中加入了box-sizzing,该css属性有两个值:border-box.content-box分别对应ie和ff中元素宽度的工作方式. 偏移量:offsetLeft.offsetTop.offsetWidth.offsetHeight off…
总体说明 做前端当然少不了ajax的使用,使用dojo的童鞋都知道dojo是基于模块化管理的前端框架,其中对ajax的处理位于dojo/request模块.一般情况下我们使用ajax请求只需要引入dojo/request模块,然后按照文档的说明制定参数即可.实际上dojo在这一模块的处理中抽象了很多概念: 平台侦探器:dojo/request/default 请求分发器:dojo/request/registry 全局通知器:dojo/request/notify 数据传输器:dojo/requ…
官方教程:Ajax with DojoAjax功能:1.从服务器加载静态数据2.从web服务中访问xml或json类型的数据3.将表单(form)数据发送到服务器4.刷新页面内容....Ajax在RIA中是核心技术,下面来看看Dojo是如何运用它的.  // Require the xhr module require(["dojo/_base/xhr", "dojo/dom"],     function(xhr,dom) { // Local var repre…
dojo很强大,也很方便,但是缺少文档,只能看源代码,也挺好的,就是费时间... 网上找了一段代码(找不到原出处了,不好意思),也看了dojo自带的demo,放一段可以执行的页面代码这里.把ip换成自己架设的js服务器(esi的CDN貌似有点问题)即可 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ut…
储备知识 1.在介绍新版本的ajax请求之前,需要先了解一些dojo/Deferreds. 初次听到“Deferred”这个概念,可能会觉得这是一个神秘的东西.实际上它在执行异步操作的时候非常强大,例如执行Ajax请求.简单来说,Deferred会延迟一段时间再执行某些操作:最重要的,它可以实现等待一个前置动作完成之后才执行你指定的动作.Ajax就是这样一个例子.我们希望在服务器成功返回我们需要的信息之后才执行某些动作.这种情况下,等待返回值是非常重要的. Dojo实现的可延迟执行的对象是doj…
总结 本文介绍了 Dojo 中三种浏览器与服务器交互的方式,这三种方式各有优缺点,但是在使用方式却出奇的一致: xhr 框架的函数,dojo.io.iframe.dojo.io.script 对象的函数使用的 JSON 对象参数也极其相似,而且浅显易懂. Dojo 设计者的这一良好设计极大的减轻了开发人员的学习负担,作为框架开发人员应该了解这一理念.表 2 对这三种方式从三个方面进行了比较.   支持的 HTTP 请求类型 期望的输出 跨域 XHR Get, post, delete, put…
用Dojo实现tab页的过程中,没有引用“on.js”,但是firebug调试时一直提示如下错误: on.js源码如下: define(["./has!dom-addeventlistener?:./aspect", "./_base/kernel", "./sniff"], function(aspect, dojo, has){ "use strict"; if(has("dom")){ // chec…
dojo/request模块整体架构解析   总体说明 做前端当然少不了ajax的使用,使用dojo的童鞋都知道dojo是基于模块化管理的前端框架,其中对ajax的处理位于dojo/request模块.一般情况下我们使用ajax请求只需要引入dojo/request模块,然后按照文档的说明制定参数即可.实际上dojo在这一模块的处理中抽象了很多概念: 平台侦探器:dojo/request/default 请求分发器:dojo/request/registry 全局通知器:dojo/request…
前言: 上一章详细阐述了dojo的事件绑定操作,本章将讲解dojo的请求操作 注:dojo的请求操作与js和jquery完全不同! 1.dojo的请求 dojo通过request.get()/.put()/.post()/.del()进行请求操作 request.post("这里放对应的请求接口地址", { //解析服务器json数据 handleAs: "json", // 直接从form表单取json对象作为参数 data: domForm.toObject(&…
0. 使用环境 Dojo版本:1.14.2 此次总结以dojo的base为主,即不需要手动引入组件 1. 常用不归类方法 1.1. dojo.addOnLoad 在页面加载完成并且dojo.require语句的请求也返回了结果之后执行 dojo.addOnLoad(function () { /* Any content that depends upon dojo.require statements goes here... */ }); 1.2. dojo.isXXX 1.2.1. 检测底…
常见的选择框控件:Selelct.FilteringSelect和ComboBox都是下拉框风格,而不是ListBox风格. dojo还提供了一个dijit.form.MultiSelect控件可以解决问题并支持多选:http://dojotoolkit.org/reference-guide/1.10/dijit/form/MultiSelect.html 需要注意的是该空间不支持store这些,需要动态在JS代码中条件<OPTION>标签. 示例代码(在官网上的代码做了改动) <!D…
在官网上看见的DataGrid编辑非常简单,但我实现的时候总是出现问题.经过N久的摸索,终于搞定了,期间出现了多处困难,下面说些解决办法的流程. 我实现的表格在页面加载时是不显示数据,只有通过表单像服务器提交查询数据后才刷新表格. 首先新建DataGrid: gridLayout =[{ defaultCell: { editable: true, type: cells._Widget, styles: 'text-align: center;' }, cells: [ { name: "WB…
DataGrid实现数据动态刷新功能见前一个帖子:http://www.cnblogs.com/qq552048250/p/4447103.html 实现数据删除只需要向表格中动态添加按钮,并为按钮的点击事件添加代码,向服务器端的删除代码发出请求,服务器删除后,再向服务器发出显示数据的请求. Action中添加删除代码. JSP的代码如下: <%@ page language="java" import="java.util.*" pageEncoding=&…
实现一个普通的数据库查询功能,参考了这个帖子:http://stackoverflow.com/questions/5499453/how-to-refresh-datagrid 需要注意的是动态创建DataGrid时,必须放在按钮的点击事件外,否则表格无法更新. ACTION: package cn.edu.just.action.configurationAction; import java.util.ArrayList; import java.util.HashMap; import…
1.引入dojo.js dojo的发行包里有4个子目录,要引入的文件是名叫"dojo"的子目录里的dojo.js. 假设你是这样的目录结构: project | +--dojo-lib | | | +--dijit | +--dojo | +--dojox | +--util | +--dojo_hello_world.html <script type="text/javascript" src="./dojo-lib/dojo/dojo.js&q…