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

通过属性值查找HTML标签并修改指定标签的文本与属性

需求实现方案

场景说明

  • 点击id为1106的外部按钮,触发myFunc函数并获取该按钮id
  • 查找HTML中data-dselect-value="1106"的按钮,提取其文本内容(示例为"Robert")
  • 将目标下拉按钮的文本内容和data-dselect-text属性值从"Charles"修改为提取到的文本

完整代码实现

HTML示例结构

<!-- 外部触发按钮 -->
<button id="1106" onclick="myFunc(this.id)">选择Robert</button>

<!-- 待查找的目标按钮 -->
<button data-dselect-value="1106">Robert</button>

<!-- 需要修改的下拉按钮 -->
<button class="dselect-button" data-dselect-text="Charles">Charles</button>

完善后的JavaScript函数

function myFunc(btnId) {
  // 1. 根据属性值定位目标按钮
  const sourceBtn = document.querySelector(`[data-dselect-value="${btnId}"]`);
  if (!sourceBtn) {
    console.warn(`未找到data-dselect-value="${btnId}"的元素`);
    return;
  }

  // 2. 提取按钮文本(去除首尾空格)
  const targetText = sourceBtn.textContent.trim();

  // 3. 定位需要修改的下拉按钮(可根据实际调整选择器,比如用id)
  const dselectBtn = document.querySelector('.dselect-button');
  if (!dselectBtn) {
    console.warn('未找到目标下拉按钮');
    return;
  }

  // 4. 更新文本内容和属性值
  dselectBtn.textContent = targetText;
  dselectBtn.setAttribute('data-dselect-text', targetText);
}

关键细节

  • 使用属性选择器[data-dselect-value="${btnId}"]精准匹配目标元素
  • 增加元素存在性判断,避免找不到元素时抛出报错
  • 用textContent.trim()处理文本,避免多余空格影响显示
  • 同时更新按钮的显示文本和data-dselect-text属性,保证数据一致性

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 23:24:33