Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > XML, XSL > Раскрывающиеся сылки


Автор: nazavrik 22.3.2010, 20:25
Добрый вечер!

У меня в xslt преобразователе реализована раскрывающаяся ссылка. Код


Код

<a href="#" onclick="obj=this.parentNode.childNodes[1].style; tmp=(obj.display!='block') ? 'block' : 'none'; obj.display=tmp; return false;"><xsl:value-of select="./@name"/> </a>



В мазиле все работает успешно. Но Altova XMLSpy отказывается воспринимать этот код (как и другие редакторы). Может нужно прописать какие-то меты?

И второй вопрос. При реализации этого на Javascript 

Код

<xsl:for-each select="//"> 
   <a href="javascript:fun1('value')" ...> <xsl:value-of select="./@name"/> </a>
      <div id="value">
         ...
      </div>
</xsl:for-each>


нужно указывать для сокрытой части id, по которому затем будет происходить сокрытие. Как я понимаю, из-за статичности id="value" при многократном вызове это не работает. Что можно в этом случае сделать?

Автор: magelan 5.4.2010, 16:04
на 1й вопрос не отвечу, т.к. не пользовался Altova XMLSpy и не знаю особенности.


по поводу второго, самый простой способ делать так:

<xsl:for-each select="//"> 
   <a href="javascript:fun1('mydiv_{position()}')" ...> <xsl:value-of select="./@name"/> </a>
      <div id="mydiv_{position()}">
         ...
      </div>
</xsl:for-each>

Еще есть возможность использовать XPath функцию generate-id()

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)