You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否将text/php脚本中的值传递至jQuery?(DOMPDF场景)

关于DOMPDF中PHP脚本变量传递至JavaScript的解决方案

嘿,直接像你那样写是行不通的哦,核心原因是这两类脚本的执行环境和时机完全不搭:

  • type="text/php"的脚本是DOMPDF在服务器端生成PDF时运行的PHP代码,属于后端执行上下文;
  • text/javascript脚本要么是浏览器加载原始HTML时执行,要么是PDF阅读器打开生成后的PDF时执行,属于前端/阅读器上下文;
    这俩上下文完全隔离,没法直接共享变量。

下面给你两个靠谱的解决办法:

方案1:直接用PHP渲染内容(最简单推荐)

既然你的目标是让.tess div显示文本,完全不需要绕JS,直接在服务器端用PHP把变量输出到HTML元素里就行,DOMPDF生成PDF时会直接渲染出文本:

<script type="text/php">
$myText = 'This is My text';
</script>
<div class="tess"><?php echo $myText; ?></div>

方案2:将PHP变量注入到JavaScript中

如果确实需要用JavaScript来处理内容,可以利用PHP的服务器端执行特性,把变量直接输出到JS代码里(相当于提前把PHP的值“硬编码”到JS里):

<script type="text/php">
$myText = 'This is My text';
</script>
<script type="text/javascript">
// 用json_encode处理特殊字符,避免JS语法错误
const myText = <?php echo json_encode($myText); ?>;
$('.tess').text(myText);
</script>
<div class="tess"></div>

补充说明

你提到的参考问题(获取DOMPDF总页数)里的text/php脚本,主要是用来在PDF渲染阶段操作PDF文档本身(比如添加页码、页眉),这类脚本的变量只存在于DOMPDF的PHP执行环境中,没法直接传递给前端JS。如果要实现动态内容,优先用服务器端直接渲染的方式更稳妥。

内容的提问来源于stack exchange,提问作者AdityaDees

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.13 07:35:26