не работает javascript в xslt

#
не работает javascript в xslt
Добрый вечер.
<script type="text/javascript">
<xsl:comment>
<xsl:text disable-output-escaping="yes">
<![CDATA[
(function(){
window.JST = window.JST || {};
var template = function(str){var fn = new Function('obj', 'var p=[],print=function(){p.push.apply(p,arguments);};with(obj){p.push(\''+str.replace(/[\r\t\n]/g, " ").replace(/'(?=[^%]*%>)/g,"\t").split("'").join("\\'").split("\t").join("'").replace(/<%=(.+?)%>/g,"',$1,'").split("<%").join("');").split("%>").join("p.push('")+"');}return p.join('');"); return fn;};
window.JST.modal_overlay = template(']]></xsl:text> <div id="modalOverlay"></div> <xsl:text disable-output-escaping="yes"><![CDATA[');
window.JST.note = template(']]></xsl:text> <div class="note ui-draggable ui-resizable has-text editable" aria-disabled="false"> <div class="border"></div> <div class="bottom ui-resizable-s ui-resizable-handle" unselectable="on"></div> <div class="top ui-resizable-n ui-resizable-handle" unselectable="on"></div> <div class="right ui-resizable-e ui-resizable-handle" unselectable="on"></div> <div class="left ui-resizable-w ui-resizable-handle" unselectable="on"></div> <div class="top-left corner"></div> <div class="top-right corner ui-resizable-ne ui-resizable-handle" unselectable="on"></div> <div class="bottom-right corner ui-resizable-se ui-resizable-handle" unselectable="on"></div> <div class="bottom-left ui-resizable-sw corner ui-resizable-handle" unselectable="on"></div> <div class="overlay"></div> <span class="note"><span class="n-count">1</span></span> <a class="delete-note">Delete</a> <div class="note-body" style="top: 173px; left: 0px; "> <div id=""> <p class="owner" style="display: none; "><strong></strong> had this to say,</p> <textarea name="comment_text"></textarea> <input class="super small watermelon button onwhite ok" id="submit_email" type="submit" name="add_comment" value="OK"/> <p class="body"></p> </div> </div> <span class="nub cfff" style="left: 15px; "></span> </div> <xsl:text disable-output-escaping="yes"><![CDATA[');
})();
]]>
</xsl:text>
</xsl:comment>
</script>

данный код не работает в xslt шаблоне, но если его очистить от:
<script type="text/javascript">
<xsl:comment>
<xsl:text disable-output-escaping="yes">
<![CDATA[

и вынести в отдельный js файл - то всё работает.
Может кто подскажет в чём тут проблема?
Модератор
#
Re: не работает javascript в xslt
Код ошибки в FireBug какой? Если открыть исходный код сгенерированной страницы, то какие будут отличия?
#
Re: не работает javascript в xslt
Это то, что пишет firebug:

JST is not defined
http://2wind.ru/js/inwork/application.js
Line 33

i is undefined
http://2wind.ru/js/inwork/application.js
Line 33


в исходном кода отличий не наблюдаю...
Модератор
#
Re: не работает javascript в xslt
А страница с ошибкой?
#
Re: не работает javascript в xslt
Модератор
#
Re: не работает javascript в xslt
2wind,
По приведенной ссылке не увидел кода с JST, который Вы привели в первом сообщении.
#
Re: не работает javascript в xslt
он не выводится в html.

вот xslt:

   <xsl:template match="/">
      <xsl:apply-templates select="/document/item"/>
   </xsl:template>
   
   <xsl:template match="/document/item">
      
      
      <!-- Получаем ID родительской группы и записываем в переменную $parent_group_id
      -->
      <xsl:variable name="parent_group_id" select="/document/information_system/parent_group_id"/>
      
      <h1>
         <xsl:value-of disable-output-escaping="yes" select="item_name"/>
      </h1>
      
      <!-- Выводим сообщение -->
      <xsl:if test="/document/message/node()">
         <xsl:value-of disable-output-escaping="yes" select="/document/message"/>
      </xsl:if>
      
      <!-- Фотогафия к информационному элементу -->
      <!-- Проверяем задан ли путь к файлу большого изображения -->
      <xsl:if test="item_image!=''">
         <div id="screenshotContainer" class="image-notes"><img alt="{item_name}" class="new" id="screenshot" src="{item_image}"/></div>
      </xsl:if>
      
      <!-- Текст информационного элемента -->
      <p class="nav">
         <xsl:value-of disable-output-escaping="yes" select="item_text"/>
      </p>
      
      <!-- Если указано отображать комментарии -->
      <xsl:if test="/document/show_comments/node() and /document/show_comments = 1">
         
         <!-- Отображение комментариев  -->
         <xsl:if test="count(item_comments/comment) &gt; 0">
            <xsl:apply-templates select="item_comments/comment"/>
         </xsl:if>
      </xsl:if>
      
      <script type="text/javascript">
         <xsl:comment>
            <xsl:text disable-output-escaping="yes">
               <![CDATA[
               (function(){
               window.JST = window.JST || {};
               var template = function(str){var fn = new Function('obj', 'var p=[],print=function(){p.push.apply(p,arguments);};with(obj){p.push(\''+str.replace(/[\r\t\n]/g, " ").replace(/'(?=[^%]*%>)/g,"\t").split("'").join("\\'").split("\t").join("'").replace(/<%=(.+?)%>/g,"',$1,'").split("<%").join("');").split("%>").join("p.push('")+"');}return p.join('');"); return fn;};
               window.JST.modal_overlay = template(']]></xsl:text> <div id="modalOverlay"></div> <xsl:text disable-output-escaping="yes"><![CDATA[');
window.JST.note = template(']]></xsl:text> <div class="note ui-draggable ui-resizable has-text editable" aria-disabled="false"> <div class="border"></div> <div class="bottom ui-resizable-s ui-resizable-handle" unselectable="on"></div> <div class="top ui-resizable-n ui-resizable-handle" unselectable="on"></div> <div class="right ui-resizable-e ui-resizable-handle" unselectable="on"></div> <div class="left ui-resizable-w ui-resizable-handle" unselectable="on"></div> <div class="top-left corner"></div> <div class="top-right corner ui-resizable-ne ui-resizable-handle" unselectable="on"></div> <div class="bottom-right corner ui-resizable-se ui-resizable-handle" unselectable="on"></div> <div class="bottom-left ui-resizable-sw corner ui-resizable-handle" unselectable="on"></div> <div class="overlay"></div> <span class="note"><span class="n-count">1</span></span> <a class="delete-note">Delete</a> <div class="note-body" style="top: 173px; left: 0px; "> <div id=""> <p class="owner" style="display: none; "><strong></strong> had this to say,</p> <textarea name="comment_text"></textarea> <input class="super small watermelon button onwhite ok" id="submit_email" type="submit" name="add_comment" value="OK"/> <p class="body"></p> </div> </div> <span class="nub cfff" style="left: 15px; "></span> </div> <xsl:text disable-output-escaping="yes"><![CDATA[');
                     })();
                     ]]>
                  </xsl:text>
               </xsl:comment>
            </script>
            
            <!-- Если разрешено отображать формы добавления комментария
            1 - Только авторизированным
            2 - Всем
            
            <xsl:if test="/document/show_add_comments/node() and ((/document/show_add_comments = 1 and /document/site_user_id &gt; 0)  or /document/show_add_comments = 2)">
               <xsl:call-template name="AddCommentForm"></xsl:call-template>
            </xsl:if>-->
         </xsl:template>

Модератор
#
Re: не работает javascript в xslt
2wind,
а где он выводится? Вижу вполне резонные ошибки в библиотеках, переменных нет, вот и ошибки.
#
Re: не работает javascript в xslt
вот почему-то выводится только html из этого кода, а сам javascript вокруг html не выводится.
#
Re: не работает javascript в xslt
Вот я и спрашиваю, почему если этот код вставлять в xslt он не отображается в исходном html и следовательно не работает?
Авторизация