Показать сообщение отдельно
  #1 (permalink)  
Старый 03.03.2009, 15:04
Аспирант
Отправить личное сообщение для artwalek Посмотреть профиль Найти все сообщения от artwalek
 
Регистрация: 11.12.2008
Сообщений: 44

Корректно ли использовать подобную функцию в XST шаблоне
Имею XML:

Код:
<?xml version="1.0" encoding="windows-1251"?>
<MENU
Name="Раздача"
Date="04.03.2009"
Price="0"
>

<ITEM
Name="Салат"
Code="2331"
Weight="100"
Price="22"
>
</ITEM>
</MENU>
И т.д. (привел для примера 1 узел ITEM, остальные с одинаковыми атрибутами).

Имею XLST вида:

Код:
<?xml version="1.0" encoding="WINDOWS-1251"?>
<xsl:stylesheet
  version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:msxsl="urn:schemas-microsoft-com:xslt"
  xmlns:ext="urn:extension-functions"
  exclude-result-prefixes="msxsl ext">

<xsl:output method="html" indent="yes" encoding="windows-1251"/>

<msxsl:script
    language="JavaScript"
    implements-prefix="ext">

<![CDATA[
function getURL() {
return location.search;
}
]]>
</msxsl:script>

<xsl:template match="MENU">
<div class="b-content">
	<div style="font-weight: bold; font-size: 11pt; padding: 0 0 15 0; color: #63A730;">
		<xsl:value-of select="@Name" disable-output-escaping="yes" /> 
		<xsl:value-of select="@Date" disable-output-escaping="yes" />
	</div>
	<xsl:apply-templates mode="overflow" />
</div>
	<xsl:apply-templates select="ITEM" />
</xsl:template>

<xsl:template match="ITEM" mode="overflow">
<xsl:param name="url" select="ext:getURL()" />
	<div style="color: #4E6BCB; font-weight: bold; float: left; padding: 1 10 0 0;">
		<a href="default.asp?{$url}&amp;id={@Code}">
			<xsl:value-of select="@Name" disable-output-escaping="yes" />
		</a>
	</div> 
	<div style="font-size: 10pt;">
	—	<span style="background: #EAECEA; width: 55px; text-align: center; color: #3B56AF;">
			<xsl:value-of select="@Price" disable-output-escaping="yes" /> р.
		</span>
	</div>
	<div>
	</div>
</xsl:template>
Задача состоит в следующем.
Нужно текущий урл в формате JS свойста search
вставить в ссылку

<a href="default.asp?{$url}&amp;id={@Code}">

Но у меня так не работает.
Грешу на используемую функцию:

function getURL() {
return location.search;
}


Не подскажите?
Спасибо!
Ответить с цитированием