javascript - 仅匹配特定文本 - jQuery 字符串

标签 javascript jquery

我正在使用下面的代码来更改按钮的类名称。但是,我只想对一个带有“上传”文本的按钮执行此操作,而不是对另一个显示“上传数据库”的按钮执行此操作。

是否可以将其从“包含”更改为仅完全匹配?

<script>


$( ".sitebutton:contains('Upload')"   ).addClass('siteButton2').removeClass('sitebutton');


</script>

最佳答案

您不能使用 :contains 执行此操作,因为它是“饥饿”匹配。另一种方法是使用 filter(),您可以在其中进行精确匹配:

$('.sitebutton').filter(function() {
  return $(this).text().trim() == 'Upload';
}).toggleClass('siteButton2 sitebutton');

如果可能的话,更好的解决方案是在所需的 button 元素上放置一个 idclass 并通过它进行选择。

关于javascript - 仅匹配特定文本 - jQuery 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45593280/

相关文章:

javascript - 从第 '1' 行的数据源请求未知参数 '0'

javascript - req.session.user 在我的 node.js 项目中不是 "global"

javascript - ionic 应用程序中的内容重叠

javascript - WebSQL错误回调中的"Cannot read property '消息' of undefined"

javascript - 如何在 Javascript 和 ColdFusion 之间编码/解码?

javascript - 使用nodejs将文件上传到s3

jquery - 从 jQuery UI Slider 获取值

javascript - D3 - 使用动态输入更新 svg attr()

javascript - 当比较数组为空时跳过比较数组

javascript - 如何使用ajax检查本地系统中是否存在图像