javascript - 使用 jQuery 从 href ="tel:"属性中删除无效字符

标签 javascript jquery html href tel

我有一个 HTML5 电话链接:

<a href="tel:+44 (0) 1234 567 890">

目前,href 属性正在从 CMS 中的字段获取数据,但我无法编辑该字段。我知道号码格式不正确,因为点击/单击电话链接时会导致错误页面。

我希望 href 属性像这样编写,以便它与所有移动设备兼容:

<a href="tel:+441234567890">

如何使用 jQuery 删除 href 属性中的空格和 (0) 字符?

最佳答案

您可以使用它来修复 href 以 tel: 开头的所有链接:

$('a[href^="tel:"]').attr('href', function(_,v){
    return v.replace(/\(0\)|\s+/g,'')
});

Demonstration

这使用 replace函数取 regular expression作为参数。我使用的正则表达式可以这样理解:

  • \(0\) : "(0)"带括号转义
  • |:或
  • \s+ :至少一个空格

正则表达式末尾的 g 标志使其多次应用。

因此它用空字符串替换 (0) 或空格。

关于javascript - 使用 jQuery 从 href ="tel:"属性中删除无效字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24039111/

相关文章:

javascript - 为什么我在新的 Promise 创建 block 中看到返回值

javascript - 将异步调用转换为同步?

javascript - 使用 jspdf 将数组导出为表

javascript - 仅在选择文件后显示加载程序,并在单击取消或十字按钮时隐藏

javascript - PHP,Jquery(ajax) post uncaught syntaxerror :unexpected token <

javascript - 在 00 :00 format? 中获取音频时间更新

jquery 中的 javascript:void(0)

javascript - 使用 jQuery ajax 函数验证表单时未设置 $_POST 变量

html - 如何获取有效的 HTML 或 Markdown 前 300 个字符?

html - 是否可以防止在 HTML 中包装子元素?