Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Mootools每个函数仅适用于阵列中的最后一个基金_Javascript_Arrays_Mootools - Fatal编程技术网

Javascript Mootools每个函数仅适用于阵列中的最后一个基金

Javascript Mootools每个函数仅适用于阵列中的最后一个基金,javascript,arrays,mootools,Javascript,Arrays,Mootools,我在页面上获得了两次以下标记,每个.option div都有不同的id,可能还会重复几次 <div class="optionsHolder"></div> <div class="option selected">Select</div> <div id="option238" class="option">Option1</div> <div id="option239" class="option">

我在页面上获得了两次以下标记,每个.option div都有不同的id,可能还会重复几次

<div class="optionsHolder"></div>

 <div class="option selected">Select</div>
 <div id="option238" class="option">Option1</div>
 <div id="option239" class="option">Option2</div>
 <div id="option261" class="option">Option3</div>

任何帮助都将不胜感激。谢谢大家!

我想这正是你想要的


. 您从中获取此信息的代码可能有错误。但是您显示的代码片段应该可以工作。您有多个选项Holder's?,如果有,您是否尝试将这些选项复制到每个选项中。有了你所拥有的是,最后一个选项持有者将获得所有选项,这里一个JSFIDLE就是你所拥有的?@Dampsquid这是目前的两个菜单,我正在尝试为每个人做同样的事情,从特定菜单中抓取选项并将其放置在holder@Marshall这正是我所拥有的,正如你们所看到的,它不适用于第一套,因为你们是通过每个支架循环的。因此,它将首先将它们全部放在第一个持有者(所有的.options)中。但随后会将它们全部放在第二个。thnx用于尝试,但您发布的小提琴上仍然是空的,它应该包含选项im get el not defined for findoptions.each(GetHolder(el));但是我想我知道为什么,我的标记是js生成的var optionholder=new Element('div').addClass('optionholder').inject($(this.optionsContainer)),看起来你的函数在之前就启动了。这是旧的fiddle,请看看新的fiddle。我明白了,但出于某种原因,我仍然得到相同的结果,标记是相同的,js也是一样的,但最后一个持有者抓住了我们自己的元素
    var optionscont = $$('.optionsHolder');
    var findoptions = $$('.option');
    optionscont.each(function (element){
        element.adopt(findoptions);
    });
function GetHolder( option )
{
   var holder = option.getPrevious( ".optionsHolder"  )

   if( holder )
   {
       holder.adopt( option );
   }        
}

var findoptions = $$('.option');
Array.each( findoptions, function( item) { GetHolder( item ) } );