【问题标题】:Convert DOMElement Array to jQuery Object将 DOMElement 数组转换为 jQuery 对象
【发布时间】:2010-06-05 17:46:31
【问题描述】:

我正在为 jQuery 使用 DataTables 插件,并且需要获取其中一个表行。 DataTables 有一个 fnGetNodes 函数,它返回一个包含表的所有 DOMElement 的数组。我想使用 jQuery 选择器来查找该行(我知道该行的 id),但是我需要将 Array 转换为 jQuery 对象,这可能吗?

【问题讨论】:

    标签: javascript jquery arrays


    【解决方案1】:

    要从节点数组中获取 jQuery 对象,您只需将其传递给 jQuery:

    var nodes = [document.documentElement, document.documentElement.firstChild];
    var extendedNodes = $(nodes);
    

    【讨论】:

      【解决方案2】:

      逻辑上你可以这样做

      var $row = $(dom_array).filter( 
                     function(index){ 
                         return $(this).attr('id') == 'some_id'; 
                     } 
                 );
      

      这将返回具有指定 id 的行的 jQuery 对象。

      【讨论】:

      • 我知道它必须简单。不过我更喜欢使用选择器。所以,我选择了: $(dom_array).filter('tr[id='+pid+']');
      【解决方案3】:

      根据http://api.jquery.com/jQuery/,您可以这样做:

      jQuery( elementArray )
      
      elementArrayAn array containing a set of DOM elements to wrap in a jQuery object.
      

      如果不起作用,可能您的数组不是实际数组,因此您可以尝试:

      $('#id',$($.makeArray(array)));
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-01-31
        • 1970-01-01
        • 2016-07-05
        • 2011-10-15
        • 1970-01-01
        相关资源
        最近更新 更多