通过jQuery选择ID或类嵌套元素



我有点困惑jQuery如何通过DOM搜索。它是从根节点中选择的,类似于XPATH/SELECTOR,还是从当前节点进行选择,无论它们在何处,类似于XPath//选择器?

我有以下设置:

<body>
    <div id="contentSection">
    //A bunch of nested DIVs follow
           <div id="parentDIV">
                <span>Selector1</span>
                <select class="selector" id="first">
                    <option value="1">1</option>
                    <option value="2">2</option>
                    <option value="3">3</option>                
                </select>
                <span>Selector2</span>
                <select class="selector" id="second">
                    <option value="A">A</option>
                    <option value="B">B</option>
                    <option value="C">C</option>                
                </select>
          </div>
    </div>
    <div id="someOtherDIVs> </div>
    <div id="someOtherDIVs> </div>
  </body>

现在,如果我尝试首先选择内容部分,然后按类或ID进行过滤,我可以将事件处理程序附加到SELECT元素,但是如果我尝试直接查询元素,则永远不会附上事件处理程序。<<<<<<<<<<

例如,这有效:

$('#contentSection').change('.plotSelector', function(e)

但不是:

$('#first').change(function(e) ... 
$('.selector').change(function(e) ...

有人可以解释为什么吗?有没有一种方法可以从根部中的任何元素中选择?

中的任何地方

使用jquery 2.1.1

是否有一种方法可以从根中从根中进行选择 dom?

只要您从document.开始,标准JavaScript方法 all 从根中进行选择:

  • document.getElementById('');
  • document.getElementsByClassName('');
  • document.getElementsByTagName('');
  • document.querySelector('');
  • document.querySelectorAll('');

是的,选择器在dom上工作(http://api.jquery.com/category/selectors/)

评论工作中提供的提琴,您是否检查了控制台是否有错误,也许JavaScript并未完全运行。

最新更新