Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.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 使用jQuery+Multi-select在上迭代_Javascript_Jquery_Multi Select - Fatal编程技术网

Javascript 使用jQuery+Multi-select在上迭代

Javascript 使用jQuery+Multi-select在上迭代,javascript,jquery,multi-select,Javascript,Jquery,Multi Select,这并不像人们想象的那么直截了当。我正在使用一个名为的插件和使用XSLT的多个选项,如下所示: <xsl:for-each select="RootField"> <select id="{RootField}" multiple="multiple" size="3"> <option value=""></option> <

这并不像人们想象的那么直截了当。我正在使用一个名为的插件和使用XSLT的多个选项,如下所示:

<xsl:for-each select="RootField">
  <select id="{RootField}" multiple="multiple" size="3">
    <option value=""></option>
    <xsl:for-each select="ChildField">
      <option value="{ChildField}"><xsl:value-of select="ChildField"/></option>
    </xsl:for-each>
  </select>
</xsl:for-each>
var selects = document.getElementsByTagName("select");

$.each(selects, function() {
  $(this).multiSelect();
});
这允许我应用multiSelect;该函数适用于页面上的每一个人

这种行为非常奇怪,每隔一个都会被更改为下拉列表,所有的都是偶数。我看不出JavaScript中有任何错误会导致这个问题,因为它会对每个问题进行迭代。更清楚地说,在页面上的9个列表中,只有位置2、4、6和8的列表应用了JavaScript


有什么想法吗?

听起来像是multiSelect中的万圣节问题,但因为我不知道multiSelect,所以我不能肯定。

听起来像是multiSelect中的万圣节问题,但因为我不知道multiSelect,所以我不能肯定。

我以前没有听到过“万圣节问题”标签,但罗伯特可能是正确的。 从getElementsByTagName返回的节点列表是动态的,即添加或删除(在本例中为选择)将在创建节点列表后更改节点列表

试一试


我以前没听说过“万圣节问题”这个标签,但罗伯特可能是对的。 从getElementsByTagName返回的节点列表是动态的,即添加或删除(在本例中为选择)将在创建节点列表后更改节点列表

试一试

试试这个:

jQuery('select').each(function(){selectAll(this.id)});
试试这个:

jQuery('select').each(function(){selectAll(this.id)});

该死的。我已经试了好几个小时了,而你却让它变得如此简单jQuery的方式很简单。我喜欢,是的。jQuery非常有用,因为它不允许我们调用document.getElementsByTagName,也不允许我们使用css和xpath选择器管理任何可以想象的事情!!该死的。我已经试了好几个小时了,而你却让它变得如此简单jQuery的方式很简单。我喜欢,是的。jQuery非常有用,因为它不允许我们调用document.getElementsByTagName,也不允许我们使用css和xpath选择器管理任何可以想象的事情!!
jQuery('select').each(function(){selectAll(this.id)});