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

使用jQuery插入元素值到alert弹窗时获取strong内容返回undefined

问题根因
  • 核心取值错误:value是表单元素(input、textarea、select等)的专属属性,普通HTML元素(比如你代码中选中的<strong>标签)不存在该属性,读取时自然返回undefined。
  • 你的DOM节点遍历逻辑本身可以正确定位到目标<strong>元素,只是取值方法使用错误,普通元素的内部文本需要通过textContent(原生JS属性)或jQuery的.text()方法获取。
修正代码

只需要修改alert中读取label文本的部分即可,修正后的完整JS代码如下:

$('.copyURL').click(function(e) {
  e.preventDefault();
  let ele = $(this).parent().siblings(':first-child').children();
  let label = $(this).parent().parent().siblings(':first-child').children();
  ele[0].select();
  ele[0].setSelectionRange(0, 99999);
  navigator.clipboard.writeText(ele[0].value);
  // 将label[0].value替换为label[0].textContent读取普通元素文本
  alert(label[0].textContent + "\r\n" + "\r\n" +
    "Copied: " + ele[0].value + "\r\n" + "\r\n" + "Use this link for your WEB site");
});

优化建议:当前的节点遍历逻辑强依赖现有HTML层级,后续如果调整DOM结构很容易失效,可以替换为容错率更高的选择器写法:let label = $(this).closest('.row').siblings('label').find('strong');,不需要严格匹配层级关系,只要在对应父容器内找到目标label下的strong即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.31 12:12:22