jquery - 按数据属性搜索,并替换

标签 jquery html

这是我的HTML

<a href="#" data-finder-code="" data-dropdown-placeholder="Select..." data-dropdown-text="1">Samsung</a>

这是我的 JQuery

var finder_code = 39;
$("a[data-dropdown-text='1']").data("finder-code", finder_code);

当我通过 $("a[data-dropdown-text='1']") 搜索并尝试替换 data-finder-code 时相同的 href 没有任何反应。我如何让它工作?

最佳答案

您的代码运行良好。当您使用 data() 时,jQuery 仅出于性能原因更新其内部缓存。如果您使用 data() 的 getter 检索值,那么您可以看到它工作正常:

var finder_code = 39;
$("a[data-dropdown-text='1']").data("finder-code", finder_code);

console.log($("a[data-dropdown-text='1']").data('finder-code'));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="#" data-finder-code="" data-dropdown-placeholder="Select..." data-dropdown-text="1">Samsung</a>

如果您更新 DOM 中的值,那么您可以使用 attr('data-finder-code'),但是它会稍微慢一些:

var finder_code = 39;
$("a[data-dropdown-text='1']").attr('data-finder-code', finder_code);

关于jquery - 按数据属性搜索,并替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45672278/

相关文章:

javascript - 由于图像加载异步,图像的宽度和高度为零

javascript - 从按钮到文本输入的 HTML 转换

javascript - add/removeClass 在 iPhone 上不起作用

html - 可以对转换样式的属性使用转换延迟吗?

javascript - 我想每次都将不同的变量传递给循环中动态创建的按钮

javascript - 带有现有选项的 select2 组合框

javascript - 如何将shiftcheckbox添加到动态生成的复选框?

javascript - 使用 AngularJS 更新集合时添加漂亮的过渡

HTML 不寻常的 flex 包装

visual-studio - Node.js - 我真的需要 Visual Studio 吗? Python 2.X 还是 3.X?