[英]How to select the element that has exactly the specified text
我無法通過確切的文本內容找到錨元素
HTML
<a href="javascript:void(0);">Project One</a>
<a href="javascript:void(0);">Project</a>
JS
var vInput = "Project";
alert($("a:contains('" + vInput + "')").length);
產量
2
我希望輸出為1
。 有什么辦法可以只將錨元素與文本Project
NOT Project One
匹配?
您可以使用filter()
函數並檢查文本是否與所需的字符串匹配:
alert($('a').filter(function() { return $(this).text() == 'Project'; }).length);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <a href="javascript:void(0);">Project One</a> <a href="javascript:void(0);">Project</a>
您可以使用.filter()來匹配確切的內容,因為:contains()將返回部分匹配項
var vInput = "Project"; var $as = $('a').filter(function() { return vInput == $(this).text().trim() }) alert($as.length);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <a href="javascript:void(0);">Project One</a> <a href="javascript:void(0);">Project</a>
使用filter
var vInput = "Project";
var anchors = $("a").filter(function() {
return $(this).text().trim() == vInput;
});
alert(anchors.length);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.