如何点击带有特定文字的锚标记? 例如,我的页面中有以下锚点
<a>one</a>
<a>two</a>
<a>three</a>
现在,用户输入一个。如何点击文字为1的标签? 我试过这个:
var uservar='one';
$('a [text=$uservar]').click();
但它不起作用。有人可以帮忙吗?
答案 0 :(得分:4)
您可以使用filter()
,
var uservar='one';
$('a').filter(function(){
return this.text === uservar
}).click();
也可以使用 :contains
,但不使用完全匹配方法。
<强> Fiddle 强>
答案 1 :(得分:3)
是的,这可以做到。
要选择锚标记,您可以使用jQuery contains
选择器。示例如下:
var uservar = 'one';
$( "a:contains('" + uservar + "')" ).trigger('click');
答案 2 :(得分:1)
有一个包含选择器,用于检查元素是否包含某个文本。 这似乎是你想要的
例如:$(&#34; a:contains($ uservar)&#34;)
有关它的更多用法,请参阅文档:https://api.jquery.com/contains-selector/
答案 3 :(得分:1)
试试这个:
$( "a:contains('One')" ).trigger('click');
答案 4 :(得分:1)
使用:contains():
$("a:contains('one')").click(function() { alert("One clicked"); });
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<a>one</a>
<a>two</a>
<a>three</a>
&#13;
答案 5 :(得分:0)
您可以将Id用于锚标记,例如
<a id="one">one</a>
<a id="two">two</a>
<a id="three">three</a>
var uservar='one';
$('#'+uservar).click();
答案 6 :(得分:0)
试试这个。
HTML
<a data-id ="One">One</a>
<a data-id ="Two">Two</a>
<a data-id ="Three">Three</a>
脚本
<script>
$("[data-id = 'One']").click(function (e) {
alert('Click event fired');
});
</script>