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

如何使用jQuery将所有required="required"属性完整替换为data-test="done"

实现方法

有两种常用的实现方案,可根据你的使用场景选择:

方案一:直接操作DOM属性(推荐)

直接通过jQuery的属性API批量处理元素,不会破坏元素上已绑定的事件,稳定性更高:

// 选中所有带有required="required"属性的元素
$('[required="required"]')
  // 移除原有required属性
  .removeAttr('required')
  // 添加目标data-test属性
  .attr('data-test', 'done')

方案二:HTML字符串替换

如果你的场景是需要拿到替换后的完整HTML源码,可以使用字符串全局替换的方式:

// 获取表单容器的完整HTML
const formHtml = $('#commentform').prop('outerHTML')
// 全局匹配替换目标属性
const replacedHtml = formHtml.replace(/required="required"/g, 'data-test="done"')

// 若需要把替换后的内容重新渲染到页面,可执行下面的代码
// 注意:该操作会销毁原有DOM上绑定的所有事件
// $('#commentform').replaceWith(replacedHtml)

注意:字符串替换存在误匹配风险,若页面中存在和required="required"完全一致的文本内容也会被替换,非必要场景优先选择方案一。

内容的提问来源于stack exchange,提问作者مهدی نبوی

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 11:57:02