بالتكرار أكثر من <حدد> عن طريق مسج + متعدد اختر

StackOverflow https://stackoverflow.com/questions/438538

  •  22-07-2019
  •  | 
  •  

سؤال

وهذه ليست تماما كما على التوالي إلى الأمام كما قد يتصور المرء. أنا باستخدام البرنامج المساعد يسمى مسج تحديد متعدد ومتعددة < اختر <الخيارات باستخدام 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();
});

وهذا يتيح لي الفرصة لتطبيق تحديد متعدد ()؛ وظيفة على كل واحد <حدد> على الصفحة.

وسلوك غريب جدا، كل الآخرين <حدد> يتم تغيير في القائمة المنسدلة (جميع حتى تلك على أي حال). لا أستطيع أن أرى أي شيء خطأ في بلدي جافا سكريبت لتسبب هذه المشكلة لأنه أعاد على كل واحد. لجعلها أكثر وضوحا، والقوائم الوحيدة التي أن جافا سكريبت المطبق عليه هي تلك الموجودة في المركز 2 و 4 و 6 و 8 (من أصل 9 التي هي على الصفحة).

وأي أفكار؟

هل كانت مفيدة؟

المحلول

وكنت لم يسمع علامة "هالوين مشكلة" من قبل، ولكن روبرت قد تكون صحيحة.
وnodelist عاد من getElementsByTagName هو دينامية أي إضافة أو إزالة، في هذه الحالة تختار، وتغيير nodelist بعد أن تم إنشاؤه.

والمحاولة

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

أو

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

نصائح أخرى

ويبدو وكأنه مشكلة هالوين ( HTTP: // بلوق .msdn.com / mikechampion / أرشيف / 2006/07/20 / 672208.aspx ) في تحديد متعدد، ولكن بما أنني لا أعرف تحديد متعدد لا أستطيع أن أقول على وجه اليقين.

وجرب هذا:

jQuery('select').each(function(){selectAll(this.id)});
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top