javascript - jQuery - 将一个属性添加到另一个属性中?

标签 javascript jquery html css

好的 - 所以这可能真的很简单,但我对 HTML 和 CSS 之外的任何东西都很陌生,所以我想是时候问了:)

所以我想做的是从一个新属性中获取内容并将其添加到 href 属性中。

我有什么:

<div id="testDiv">
    <a href="" newAttr="12345">LINK</a>
</div>

$('#testDiv a').attr('href',newAttr+'.extension');

我想要的结果是:

<div id="testDiv">
    <a href="12345.extension" newAttr="12345">LINK</a>
</div>

我是不是在这里遗漏了一些非常明显的东西,还是我离得很远?

任何帮助都会很棒!

谢谢, 尼克

*编辑 - 我在这篇文章中遗漏了一个等号,而不是我的实际代码 - Rookie :)

最佳答案

您还可以使用 attr()获取属性的值:

$('#testDiv a').attr('href', function (i, attr) {
    return $(this).attr('newAttr') + '.extension'
});

顺便说一句,您的 HTML 标记中缺少 =:

<a href="12345.extension" newAttr="12345">LINK</a>
// ----------------------------- ^ here  

Fiddle Demo


编辑:i 是你的 anchor 在 div 内的 anchor 集中的索引位置,id 为 testDiv,所以在你的情况下它将是 0 因为那里只有一个 anchor 。在这种情况下,i 不是强制性的,因为您根本不需要使用它。

另一方面,attr 将返回 anchor 的旧 href 值。这里也不需要这个,因为您需要 newAttr 的值而不是 href 值,所以实际上您可以将它们都留空:

$('#testDiv a').attr('href', function () {
    return $(this).attr('newAttr') + '.extension'
});    

关于javascript - jQuery - 将一个属性添加到另一个属性中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22113876/

相关文章:

javascript - 使用 async.js 深度填充 sails.js

javascript - 使用 Require.js 加载 Dropzone.js‏

javascript - 如何在初始化后在 slick-slider 中添加另一个图像元素

javascript - 管理 Javascript 文件中的事件传播

JavaScript 正则表达式使用字符串?

javascript - 使用 jQuery 找到所有包含 anchor 的 div

javascript - 删除行 Jtable Jquery

javascript - 显示图像的一部分

html - 导航下拉菜单 CSS

html - Css 和轻微的挫败感