質問

これは、考えられるほど単純ではありません。 jQuery MultiSelect という名前のプラグインと複数の&lt ;選択>次のように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>

付随するJavaScriptは次のとおりです。

var selects = document.getElementsByTagName("select");

$.each(selects, function() {
  $(this).multiSelect();
});

これにより、multiSelect()を適用できます。すべての単一の&lt; select&gt;ページで。

動作は非常に奇妙です。他のすべての&lt; select&gt;ドロップダウンリストに変更されています(とにかくすべて偶数)。 JavaScriptでこの問題が発生することはありませんが、すべての問題が繰り返されるため、この問題が発生することはありません。より明確にするために、JavaScriptが適用されているリストは、位置2、4、6、および8(ページにある9つのうち)にあるものだけです。

アイデアはありますか

役に立ちましたか?

解決

「ハロウィーンの問題」タグを聞いたことはなかったが、ロバートは正しいかもしれない。
getElementsByTagNameから返されるノードリストは動的です。つまり、追加または削除(この場合はselect)は、作成後にノードリストを変更します。

試用

//hoping for magic here
$('select').multiSelect();

または

$('select').each( function() {
    $(this).multiSelect();
});

他のヒント

ハロウィーンの問題のような音( http:// blogs .msdn.com / mikechampion / archive / 2006/07/20 / 672208.aspx ))をmultiSelectで使用していますが、multiSelectがわからないため、確実に言うことはできません。

これを試してください:

jQuery('select').each(function(){selectAll(this.id)});
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top