如何获取点击链接的文本值?
我在文档的不同部分有匹配的文本。第一个是表格中的一组“标签”,如下所示:
<div id="my-div">
<div><a href="#">tag 1</a></div>
<div><a href="#">tag 2</a></div>
</div>
然后在文档的其他几个部分中,当选择匹配链接时我想要突出显示的项目后面有一个隐藏元素,如下所示:
<div class="hide-me">tag 1</div>
然后我的点击功能是像这样:
$('#my-div a').click(function() {
var txt = $(this).text();
console.log(txt);
});
输出是一个空字符串,但我不知道为什么。
I have matching text in different parts of a document. The first is a set of "tags" in a table like so:
<div id="my-div">
<div><a href="#">tag 1</a></div>
<div><a href="#">tag 2</a></div>
</div>
Then in several other parts of the document, I have a hidden element after the items I want to highlight when the matching link is selected like so:
<div class="hide-me">tag 1</div>
Then my click function is like this:
$('#my-div a').click(function() {
var txt = $(this).text();
console.log(txt);
});
The output is an empty string, but I’m not sure why.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您的代码似乎是正确的,也尝试一下这个。
your code seems to be correct, try this one too.
在您的情况下,我不会使用链接的文本,因为它将来可能会发生变化(即您需要翻译您的网站)。更好的解决方案是向链接添加自定义属性:
然后将隐藏标签的 id 放在那里,这样您就可以:
In your case I wouldn't use the text of the link, as it's possible it may change in the future (ie. you need to translate your website). The better solution is to add custom attribute to links:
And then put the id of the hidden tag there, so you and up with:
$('#my-div a') 不明确。
它会读取“#my-div”中的所有 a 标签,
您需要指定单击这 2 个标签中的哪一个。
$('#my-div a') is ambiguous.
It goes to read all the a tags within '#my-div'
U need to specify which of the 2 tags is clicked..