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

jQuery获取页面strong标签值通过PHP输出时变量未定义如何解决

修复方案

错误根源

你出现报错的核心原因有两个:

  • 执行时序冲突:PHP是服务端语言,在页面发送给浏览器之前就已经全部执行完毕,不可能读取到浏览器端后续才运行的JavaScript变量值。
  • 变量作用域不匹配:getnum是定义在jQuery ready回调函数内部的局部变量,你通过PHP输出的独立<script>标签运行在全局作用域,根本访问不到函数内部的局部变量,且独立script的执行时机早于ready回调,变量还没完成初始化就被调用了。

正确实现

你要获取的积分数值本身已经渲染在页面DOM中,不需要混写PHP,直接在JavaScript回调内处理即可:

jQuery(document).ready(function ($) {
    // 获取strong标签内的内容,去除空格后转成整数
    const getnum = parseInt($('div.elementor-widget-container p > strong').text().trim(), 10);
    // 拿到数值后直接在这里做后续操作即可,比如控制台打印、插入页面其他位置
    console.log('获取到的积分数值:', getnum);

    // 如果需要把数值传给后端PHP处理,走AJAX请求即可,示例:
    // $.post('后端处理地址', {points: getnum}, function(res) {
    //     处理返回结果
    // })
});

如果你确实需要把积分值输出到页面指定位置,直接操作DOM即可,完全不需要用到document.write(该方法非常不推荐使用),比如要插入到id为point-show的元素中,直接加一行$('#point-show').text(getnum)即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 18:15:03