XSLT的xsl:param怎么用 向样式表传递参数


xsl:param用于声明可外部传入的只读参数,提升XSLT复用性;需由处理器注入值,支持默认值,引用时XPath中须加$前缀,与xsl:variable本质不同。

xslt的xsl:param怎么用 向样式表传递参数

xsl:param 用于在 XSLT 样式表中声明可外部传入的参数,让样式表更灵活、可复用。它本身不提供值,值需由调用方(如 XSLT 处理器、程序代码或命令行工具)传入;若未传值,可设默认值。

基本写法和默认值

在 XSLT 中任意顶层位置(如 <stylesheet></stylesheet> 内、模板外)声明:

<xsl:param name="lang" select="'zh'" />

这表示参数名为 lang,若调用时没给值,就用默认值 'zh'(字符串字面量)。也可以绑定到一个表达式,比如:

<xsl:param name="showTitle" select="/book/@showTitle = 'true'" />

在模板中使用参数

声明后,参数名就可在 XPath 表达式中直接使用(不用加 $ 前缀):

  • 在匹配模板中:<if test="$lang = 'en">Hello</if>(注意:这里必须加 $)
  • 在属性值模板中:<div lang="{$lang}"></div>
  • 作为函数参数:<value-of select="concat('ID-', $id)"></value-of>

⚠️ 注意:在 XPath 上下文中引用参数必须加 $(如 $lang),但在 select 属性里写默认值时不用(那是静态表达式,不是变量引用)。

Opus Opus

AI生成视频工具

Opus 77 查看详情 Opus

从外部传入参数(常见方式)

参数值不能在 XSLT 文件里“自己设”,必须由处理器注入:

  • J*a(Transformer):transformer.setParameter("lang", "en");
  • Python(lxml):transform(xslt_root, lang=etree.XSLT.strparam("en"))(字符串需用 strparam 包装)
  • 命令行(xsltproc):xsltproc --stringparam lang en style.xsl doc.xml(--stringparam 用于字符串,--param 用于 XPath 表达式)
  • 浏览器(旧版支持):不支持运行时传参,需预编译或改用 JS 控制

和 xsl:variable 的关键区别

别把 xsl:param 当成普通变量用:

  • xsl:param 是只读的,且值来自外部;xsl:variable 是本地定义、不可重赋值,但值完全由样式表控制
  • 同名 param 和 variable 共存时,param 优先级更高(会覆盖同名 variable)
  • 全局 param 可被所有模板访问;局部 param(在模板内声明)仅限该模板作用域(XSLT 2.0+ 支持)

基本上就这些。用好 xsl:param 能让一个样式表适配多场景,比如切换语言、开关调试模式、动态过滤条件——不复杂但容易忽略。

以上就是XSLT的xsl:param怎么用 向样式表传递参数的详细内容,更多请关注其它相关文章!


# java  # python  # 如何用  # 作用域  # 区别  # 工具  # 浏览器  # 处理器  # js  # 湘潭网站建设方案优化  # 寿光seo网站推广  # 地产营销视频推广文案  # 佛山优化seo公司排名  # 合肥网站SEO源头厂家  # 桥头家具网站优化有哪些  # 怀柔关键词seo  # 湘乡营销推广案例  # 襄阳网站优化推广价格  # spa如何对seo优化  # 能在  # 但在  # 那是  # 复用  # 怎么处理  # 是否符合  # 命令行  # 默认值  # 样式表 


相关栏目: 【 Google疑问12 】 【 Facebook疑问10 】 【 优化推广96088 】 【 技术知识133117 】 【 IDC资讯59369 】 【 网络运营7196 】 【 IT资讯61894 】


相关推荐: Python中处理嵌套字典与列表的数据提取与过滤教程  《盗墓笔记手游》技能介绍  悟空浏览器如何恢复关闭的标签页 悟空浏览器撤销关闭网页快捷键设置  苹果自助维修计划支持哪些设备机型  顺丰快递怎么查物流_顺丰快递物流信息实时查询操作指南  iphone16系列配置参数介绍  J*a中逻辑运算符如何使用_逻辑与或非的基础用法讲解  申通快递物流信息查询 申通快递包裹状态追踪  Win10关闭UAC用户账户控制的方法 Win10降低安全提示等级【技巧】  学习通网页版个人登录_学习通网页版个人账户登录入口  深入理解J*aScript异步操作:setTimeout与调用栈的真相  win11如何运行chkdsk命令 Win11检查和修复磁盘逻辑错误教程【修复】  花生壳内网映射新方案  优化Leaflet弹出层图片显示:条件渲染策略  微信客户端如何找回密码_微信客户端忘记密码找回方法  OPPO A3 WiFi频繁断开怎么办 OPPO A3网络优化技巧  太平年在哪个平台播出  淘口令快速解析技巧  win11怎么设置默认终端为Windows Terminal Win11替代CMD和PowerShell【技巧】  《星露谷物语》克林特好感度事件介绍  CSS过渡如何实现按钮悬停效果_transition属性控制背景颜色变化  WooCommerce购物车:强制显示所有交叉销售商品教程  OpenWeatherMap API:通过城市名称获取天气预报数据指南  动漫岛汉化官网网 动漫岛官方动漫汉化地址  汽水音乐在线听歌网页版 汽水音乐在线听歌网页版入口  解决Pandas DataFrame高度碎片化警告:高效创建多列的策略  J*a中的值传递到底指什么_值传递模型在参数传递中的真正含义说明  风神瞳获取全攻略  京东物流快递破损了怎么办_京东快递破损理赔流程  抖音官网入口快速访问 抖音网页版账号注册解析  厨房地面防滑垫的油污怎么洗? 机洗和手洗防滑垫的注意事项  铁路12306座位怎么选_12306官方选座操作方法  如何解决Casbin日志与应用日志不统一的问题,使用casbin/psr3-bridge实现无缝集成  《东方航空》添加乘机人方法  mysql镜像配置如何恢复数据_mysql镜像配置数据恢复详细流程  如何修改Windows截图的默认保存位置_告别C盘让桌面更整洁【教程】  PHP odbc_fetch_array 返回值处理:如何正确访问嵌套数组元素  荣耀Magic6 Pro拍照成像偏暗_荣耀Magic6 Pro夜景优化  背部总是隐隐作痛怎么回事 背痛如何改善  多闪电脑版下载_多闪PC端模拟器使用  苹果电脑如何快速截图并编辑 苹果电脑截屏标注快捷操作  TikTok网页版入口快速访问 TikTok官网账号登录方法  Sublime怎么自动添加CSS前缀_Sublime安装Autoprefixer插件  《下一站江湖2》风神腿获取攻略  三星M34录音变声问题_Samsung M34麦克风调整  123网页端官方登录页 123邮箱网页版即时通讯服务  鸿蒙单条备忘录如何加密  Fedora怎么安装 Fedora Workstation安装步骤  支付宝如何解绑云闪付_支付宝与云闪付账户关联解除方法  《幻兽帕鲁》手游帕鲁捕捉技巧分享 

 2025-12-20

了解您产品搜索量及市场趋势,制定营销计划

同行竞争及网站分析保障您的广告效果

点击免费数据支持

提交您的需求,1小时内享受我们的专业解答。

运城市盐湖区信雨科技有限公司


运城市盐湖区信雨科技有限公司

运城市盐湖区信雨科技有限公司是一家深耕海外推广领域十年的专业服务商,作为谷歌推广与Facebook广告全球合作伙伴,聚焦外贸企业出海痛点,以数字化营销为核心,提供一站式海外营销解决方案。公司凭借十年行业沉淀与平台官方资源加持,打破传统外贸获客壁垒,助力企业高效开拓全球市场,成为中小企业出海的可靠合作伙伴。

 8156699

 13765294890

 8156699@qq.com

Notice

We and selected third parties use cookies or similar technologies for technical purposes and, with your consent, for other purposes as specified in the cookie policy.
You can consent to the use of such technologies by closing this notice, by interacting with any link or button outside of this notice or by continuing to browse otherwise.