`
拓子轩
  • 浏览: 210738 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

dojo获取dom节点的方法

    博客分类:
  • js
阅读更多

 1. 通过id获取dom节点

如果要对html文档中的元素进行处理时,我们一般会为该节点设置一个id属性;在dojo中,提供了一个通过id获取节点的简洁方式。

如果要获取如下节点:

<input type="text" name="username"  value="alex1" id="username" class="textCss"/>

 

使用js获取该节点:

document.getElementById("username");

 

使用dojo获取该节点:

dojo.byId("username");

 注意:如果没有找到指定id的节点,返回的将是undefined,而不是null。

 

2. 使用dojo.query进行通用查询

    除了通过byId来获取节点外,dojo提供了更为通用的方法query来获取dom节点,使用query方法获取指定id节点的方式如下:

var usernameObj  = dojo.query("#username"); //方法1
var usernameObj  = dojo.query("[id='username']"); //方法2
var usernameVal = usernameObj[0].value;

  

 2.1 通过节点的属性来获取节点的格式如下:

    dojo.query("[属性名='属性值']");

所以,你也可用一下方式来获取:

dojo.query("[name='username']");
dojo.query("[type='text']");
dojo.query("[value='alex']");

 

注意:通过query的方式获取节点,返回的将是一个对象数组;如果没有获取到任何节点,将返回空字符串"",而不是null。

 

  2.2 通过节点类型来获取节点的格式如下:

        dojo.query("节点类型");

   如获取所有的input的节点:

dojo.query("input");

 

    可以和其他方式结合在一起使用,如获取input节点中name属性值为username的节点:

dojo.query("input[name='username']");

  

   2.3 通过样式名来获取节点的格式如下:

         dojo.query(".样式名");

dojo.query(".textCss");

 

3. 节点复杂查询

    3.1 从某节点的所有后代节点中查找

dojo.query("body input");

 

    3.2 从某节点的子节点中查找

dojo.query("body>input");

   3.3 获取指定属性的值中,以"item"字符串开头、结尾或包含此字符串节点的方式如下:

 

dojo.query("[name^='item']"); 
dojo.query("[name$='item']"); 
dojo.query("[name*='item']"); 

   3.4 获取第一个和最后一个节点,或指定索引的节点

dojo.query("input:first-child");
dojo.query("input:last-child");
dojo.query("input:nth-child(1)");  // 索引从1开始
dojo.query("input:nth-child(odd)");

 

    如果某个元素是父元素中唯一的子元素,可以使用如下方式获取:
dojo.query("body form:only-child");
 
分享到:
评论

相关推荐

    dojo对DOM树的关于byid() pdf格式

    - **灵活性**:除了通过ID查找DOM节点外,`dojo.byId()`还支持直接传递DOM节点作为参数,此时将直接返回该节点。 #### 实际应用案例 1. **修改DOM元素内容** 假设我们需要修改页面上某个元素的内容,可以利用`...

    dojo1.6关于DOM相关操作的官方介绍

    3. **dojo.byId**: 这个函数是获取DOM节点的简单方式,它接受一个ID作为参数,返回匹配该ID的DOM节点。等同于JavaScript的`document.getElementById`。 4. **dojo.place**: 此函数用于在DOM树中插入新的元素。它...

    dojo对DOM树的操作相关api pdf格式

    与传统的JavaScript方法相比,如`document.getElementsByTagName("body")[0]`,`dojo.body()`不仅代码更为简洁,同时也更安全,因为它确保即使在非浏览器环境下也能正确获取或模拟`&lt;body&gt;`元素。 ##### 函数特点: ...

    dojo常用方法总结

    - **`dojo.forEach`**:这个方法可以遍历一个数组或一组DOM节点,并对每个元素执行特定的操作。 ```javascript dojo.forEach(dojo.query("[name^=aa]"), function(obj, i, list) { // 对name以"aa"开头的每一个...

    Dojo 基础1-语言及浏览器实用程序

    在"基础1-语言及浏览器实用程序"这一部分,我们将探讨Dojo的一些核心特性,包括DOM节点操作、类型检查、字符串工具、数组处理以及模块管理。 1. **Dojo查找DOM节点**: `dojo.byId()`函数是Dojo提供的一个方便的...

    dojo1.8.3官方demo

    2. **dojo/dom**: 提供DOM(Document Object Model)操作,包括获取、设置DOM节点属性,创建和移除元素等。 3. **dojo/dom-geometry**: 用于处理元素的位置和尺寸,包括获取坐标、大小、滚动位置等。 4. **dojo/...

    dojo源码

    6. Dojo DOM操作:`dojo/dom`模块提供了对DOM节点的各种操作,如查找、创建、修改、删除节点。此外,`dojo/query`模块提供了类似于CSS选择器的API,便于选取DOM元素。 7. Dojo事件处理:`dojo/on`模块提供了事件...

    Dojo-China.zip_chinadojo1688_dojo_dojo 实战_dojo中文网

    5. **dojo/NodeList**: 这是一个类似jQuery的选择器,用于选取DOM节点集合,并提供了丰富的链式操作方法。 6. **dojo/fx**: 包含了一系列的动画效果函数,如dojo/fx/Toggler可以实现元素的显示和隐藏动画,dojo/fx/...

    DOJO 学习笔记 dojo

    `dojo.dom` 模块则提供了操作 DOM(文档对象模型)节点的方法,如查找、创建、修改和删除元素。 `dojo.event` 以及 `dojo.event.topic` 和 `dojo.event.browser` 是事件管理和发布订阅模式的实现。`dojo.event` ...

    Dojo相应的jar包

    5. **dojo/NodeList**: 一组DOM节点的集合,提供了一系列操作这些节点的方法。 6. **dojo/fx**: 提供了动画效果和转换功能,可以方便地实现页面元素的过渡和动画。 7. **dojo/store**: 数据存储抽象层,用于与数据...

    Dojo的一些学习资料

    5. **dojo/dom**: 这个模块提供了操作DOM节点的方法,如查找元素、创建元素、修改元素属性等,是Dojo进行DOM操作的基础。 6. **dojo/on**: 这个模块用于事件处理,提供了一种统一的方式来绑定和解绑事件监听器,...

    Dojo权威指南源代码

    3. **dojo/dom和dojo/query**:这两个模块提供了DOM操作功能,包括查找、修改和操作DOM节点。在源代码中,你会看到如何利用dojo/query选择元素,并使用dojo/dom进行属性修改和事件绑定。 4. **dojo/on和dojo/event*...

    dojo1.1 javascript框架

    它们提供了类似于jQuery的API,方便查找、创建、修改和删除DOM节点。 4. **事件处理**:Dojo的`dojo/on`模块允许开发者监听和处理DOM事件,它支持事件委托和跨浏览器兼容性,简化了事件处理代码。 5. **Ajax通信**...

    Dojo基础资料

    在这里,你将学习到Dojo的Widget体系,包括如何使用dijit/registry来管理和操作DOM节点,以及如何创建和使用各种预定义的UI组件,如按钮、表单、布局容器等。你还将了解到如何利用dojo/dom-style和dojo/dom-class来...

    dojo test soure code

    通过它们,我们可以选择、操作和测量DOM节点,使得DOM操作更为便捷。 5. **事件处理**:Dojo的`dojo/on`模块用于监听和处理DOM事件,它提供了更高级的事件处理功能,如事件委托。在测试代码中,我们可能需要检查...

    springjdbc的简单运用以及Dojo的小案例,包括了Dojo的相关资料包

    此外,Dojo的`dojo/query`模块提供了类似于jQuery的选择器功能,而`dojo/dom`模块则包含了一系列操作DOM节点的方法。通过这些工具,开发者可以轻松地查找、修改或操作页面元素。 在案例中,可能会有一个简单的Dojo...

    Dojo Hello World

    6. **打印输出**:可能使用`dojo/dom-construct`创建一个文本节点,然后将其插入到DOM中,显示"Hello, World!"。 通过这个基础教程,开发者能够快速入门Dojo,为后续深入学习Dojo的高级特性,如数据绑定、异步操作...

    dojo 一个小的例子

    例如,`dojo/query("selector")` 可以获取匹配的DOM节点集合,而 `dojo/on` 模块则用于事件监听。 2. **模块管理**:Dojo 采用AMD(Asynchronous Module Definition)模块加载机制,允许开发者按需加载和组织代码。...

Global site tag (gtag.js) - Google Analytics