使用另一个文件中的javascript变量创建xsl变量的方法?

时间:2013-01-15 15:10:30

标签: javascript variables xslt

是否可以使用

创建xsl变量
<xsl:variable name="x"><xsl:value-of select="country" /></xsl:variable>

使用javascript变量?

变量“country”在另一个javascript文件中创建,该文件未嵌入xslt中。我正在尝试使用ajax来获取用户位置的国家。

-------------- Javascript文件--------------

$(document).ready(function()
{
if (navigator.geolocation) {
    navigator.geolocation.getCurrentPosition(function(position) {       

    $.getJSON('http://ws.geonames.org/countryCode', {
    lat: position.coords.latitude,
    lng: position.coords.longitude,
    type: 'JSON'
    }, function(result) {
    country = result.countryCode;
});  
});
};

如果有更好的方法,请回复。 提前谢谢。

1 个答案:

答案 0 :(得分:1)

如果要将值传递给XSL,典型的机制是使用参数。在XSL的顶层,您将声明参数:

<xsl:stylesheet ....>

  .....

  <xsl:param name="country" />

  .....

然后您将从外部代码传递该值,表示该值适用于“country”参数。

我没有在JavaScript中使用XSLT参数的经验,但本教程似乎有关于如何操作的信息:

Passing XSLT parameters with JavaScript

Mozilla也提供了这些信息,但我不确定跨浏览器兼容的方法是什么:

Using the Mozilla JavaScript interface to XSL