Безкрайно вложени SEARCH <DIV> Етикети и jQuery

Това изглежда като такава Одбол тема, Аз не съм сигурен, че е наистина си струва blogging за, но това никога не ми спря преди, така че тук ние отивам Усмивка

Аз съм работа по даден проект, където аз съм дърпа някои данни от търсене, пакетирането му в XML съобщение и след това тази XML в крайна сметка се преобразува в HTML чрез XSLT.  Има много на jQuery, участващи, една част от които реализира някои tabbing функционалност.  Когато щракнете върху даден раздел (Наистина, а <DIV>), jQuery извиква .hide() и .show() на различни divs (на началната страница натоварване изтегля цялото съдържание, така че няма никакви връщания обратно в този случай).

Няколко часа преди, раздела превключване на логиката започна да се държат erratically и тя няма да се покаже един от моите раздели.  Аз в крайна сметка го проследи до факта, че internet explorer (най-малко) Мислех, че <DIV> етикети, вложени далеч, далеч по-дълбоко отколкото е предвидено.Развивам оръдие ще покаже:

-<DIV id = "Tab1Content">
  -<DIV>
    -<DIV>
      -<DIV id = "Tab2Content">
        -<DIV>
           …………………………
                   </DIV>  <— най-накрая показва, че е затворен чак тук!

Така, Ако аз го направих $("#Tab1Content").Скрий(), Аз също така ще скриете Tab2 и никога не може да покаже Tab2 ако аз също не показват Tab1.  Аз копирани и поставили кода в visual studio и той показа всички на div подплата горе добре, точно като те би трябвало да се прави, гледам подобен този:

-<DIV id = "Tab1Content">
  +<DIV>
  +<DIV>
-<DIV id = "Tab2Content">
  +<DIV>
  +<DIV>

Бие главата ми срещу стената за известно време и забелязах, че в реалната HTML код е генериране много празни <DIV> Тагове, като:

<тяло>

  <DIV id = "Tab1Content">

    <DIV id = "row1" />
    <DIV id = "row2" />

  </DIV>

  <DIV id = "Tab2Content">

    <DIV id = "row1" />
    <DIV id = "row2" />

  </DIV>

</тяло>

(По-горе е waaaaaaaaaaaay опростени.  На празен div таговете са напълно валидни. Някои от моите <DIV> Tags са пълно съдържание, но много други не са.  Аз дойдох до осъзнаването, че ми <XSL:за всеки> директивите не се излъчва кратка форма когато Тагове div xsl:за всеки не "намери някакви данни.  Аз принудени HTML коментар в изхода, както е показано:

image

 

След като направих това, всички div подредени добре и ми tab превключване започва да работи.

Както винаги, Аз надежда този помагам някой в краен случай.

</край>

Абонирайте се за моя блог.

Следвайте ме на Twitter в http://www.twitter.com/pagalvin

Оставете отговор

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани *