我正在尝试与正则表达式一起使用classList.replace()。我的目标是用像badge -success这样的其他值替换像badge-something这样的表达式。
我试过这个:
element.classList.replace(/badge-*/i, 'badge-success')
Run Code Online (Sandbox Code Playgroud)
但它返回false并且不会改变任何内容。我缺少什么?
Element.classList是一个DOMTokenList(不是字符串)。
DOMTokenList.replace需要两个字符串,而不是正则表达式。第一个参数是您要替换的确切类名。不支持模式。
如果你想使用正则表达式,你需要一个字符串:
element.className = element.className.replace(/(^|\s)badge-\S+/g, '$1badge-success');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1598 次 |
| 最近记录: |