2015-09-17 6 views
0

Я использую встроенную таблицу стилей в документ xml Referring the link. Мое намерение получает имя файла из тега xml через XSLT и проверяет его с помощью Javascript. Я пытаюсь передать значение переменной xsl функции javascript. Мое предупреждение не работает. Я уверен, что браузер запускает мой Javascript.Невозможно использовать переменную xsl в Javascript

Но я получаю синтаксическую ошибку error image

Мой XML-код

<?xml version="1.0" standalone="no" ?> 
<?xml-stylesheet type="text/xsl" href="#id(xyz)"?> 
<file> 

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" id="xyz"> 

<xsl:template match="/"> 
<xsl:variable name="fName" select="filename" /> 
<xsl:text><xsl:value-of select="$fName"/></xsl:text> 
<html> 
    <head> 
     <script type="text/javascript"> 

     var fileName = "<xsl:value-of select="$fName"/>"; 
     alert(fileName); 
     </script> 
    </head> 
    <body>  

    </body> 
</html> 
</xsl:template> 
</xsl:stylesheet> 

<filename>10052015</filename> 
</file> 
+1

я думаю теги сценария являются неанализируемыми. вы можете просто ввести значение в скрытый div или вход. – dandavis

+0

Какой браузер дает это сообщение об ошибке? –

+0

MartinHonnen - Internet Explorer – Sam

ответ

1

Насколько я помню, Internet Explorer не поддерживается ссылок встроенных таблиц стилей.

С Firefox и Chrome http://home.arcor.de/martin.honnen/xslt/test2015091801.xml работает для меня, его исходного кода

<?xml version="1.0" standalone="no" ?> 
<?xml-stylesheet type="text/xsl" href="#xyz"?> 
<!DOCTYPE file [ 
    <!ATTLIST xsl:stylesheet 
    id ID #REQUIRED> 
]> 
<file> 

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" id="xyz" version="1.0"> 

<xsl:template match="/"> 
<xsl:variable name="fName" select="file/filename" /> 
<html> 
    <head> 
     <script type="text/javascript"> 

     var fileName = "<xsl:value-of select="$fName"/>"; 
     alert(fileName); 
     </script> 
    </head> 
    <body>  
     <h1>Test</h1> 
    </body> 
</html> 
</xsl:template> 
</xsl:stylesheet> 

<filename>10052015</filename> 
</file> 
+0

@Matin Honnen - Спасибо – Sam

Смежные вопросы