這裏是我的HTMLjQuery的,如果類名包含
<div class="item">Item #SKU987</div>
我試圖創建一個簡單的jQuery,但它一直在返回undefined
if (jQuery('div.item:contains("Item #SKU987")').length) {
alert("Hello! This works!");
}
我在控制檯嘗試了這一點我不斷獲取undefined
我缺少什麼?
這裏是我的HTMLjQuery的,如果類名包含
<div class="item">Item #SKU987</div>
我試圖創建一個簡單的jQuery,但它一直在返回undefined
if (jQuery('div.item:contains("Item #SKU987")').length) {
alert("Hello! This works!");
}
我在控制檯嘗試了這一點我不斷獲取undefined
我缺少什麼?
您是否嘗試過使用$(文件)。就緒(函數(){...})。這是一個解決方案。希望能幫助到你!
$(document).ready(function(){
if (jQuery('div.item:contains("Item #SKU987")').length) {
alert("Hello! This works!");
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<div class="item">Item #SKU987</div>
這裏的另一種解決方案:
if($(".item").text().indexOf("Item #SKU987") !== -1){
alert("Hello! This works!");
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<div class="item">Item #SKU987</div>
試試這個:
if(jQuery('.item').eq(0).html() == "Item #SKU987") {
alert('it finally worked!');
}
或者如果你有多個.items
,使用此:
jQuery.each('.item', function(i,v) {
if(jQuery(this).html() == "Item #SKU987";)
alert('index: '+i+' contains "Item #SKU987"');
});
試試這個
if ($(".item").text() == "Item #SKU987") {
alert("Hello! This works!");
}
將代碼放入$(document).ready();
。然後它會工作。我附上了示例代碼。你的問題是,當你調用選擇器時,你的dom還沒有加載。
<html>
\t <head>
\t \t <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
\t \t <script>
\t \t $(document).ready(function(){
\t \t \t if (jQuery('div.item:contains("Item #SKU987")').length) {
\t \t \t \t alert("Hello! This works!");
\t \t \t }
\t \t });
\t \t </script>
\t </head>
\t <body>
\t \t <div class="item">Item #SKU987</div>
\t </body>
</html>
見@ HenryDev的第二個解決方案。 如果你在控制檯中運行它,你將得到undefined
作爲結果,因爲這個if語句本身沒有值。在控制檯中忽略這個結果。 使用indexOf
時,您必須注意字母的大小寫。你確定你正在尋找的文本是在確切的情況下,而不是低或大寫? 使用view-source:
確保您正在尋找正確的東西。
在這個** DOM元素被加載**和** jQuery被加載後執行** **?控制檯日誌中是否有錯誤?此外,如果適用,使用'text()'和JS條件而不是':contains'選擇器是一個好主意。 –
@YeldarKurmangaliyev是的,它在DOM元素和jQuery加載後執行 – Haim
@Haim你看過我的2個解決方案嗎? – HenryDev