簡體   English   中英

如何通過正在更改的類名獲取多個元素?

[英]How to get multiple elements by class name that are changing?

誰能幫我? 我正在嘗試按類名選擇多個元素。 一切都很好,直到頁面中間某處的評論文本不可用,只有評論者姓名和已評論的產品。 如果該特定行不存在該元素,如何將其設置為跳過該元素並移至下一行?

編輯:所以根據建議,我嘗試使用下面的代碼,但控制台說
-forEach 不是函數 我在以下頁面上運行這個: https : //www.etsy.com/shop/FamilyshirtsCo/reviews

var productRows = document.getElementsByClassName("div.flag-body pb-xs-0");
productRows.forEach(function(productRow){
var name = productRow.querySelector(".p.shop2-review-attribution");
var comments = productRow.querySelector(".p.prose break-word m-xs-0");
var product = productRow.querySelector(".flag-body hide-xs hide-sm");
var final = product[i].innerText +" | "+ price[i].innerText +" | "+ 
quantity[i].innerText;
console.log(final);
});

getElementsByClassName 返回所有具有指定類的元素,而不管其兄弟或父元素。 在這里,您可以將 some 類分配給該行的父類:

因此,html結構如下:

<div class="product-row">
    <div class="product">
        some product
    </div>
    <div class="price">
        some price
    </div>
    <div class="quantity">
        some quantity
    </div>
</div>

Javascript :

var productRows = document.getElementsByClassName("product-row");
productRows.forEach(function(productRow){
    var product = productRow.querySelector(".product");
    var price = productRow.querySelector(".price");
    var quantity = productRow.querySelector(".quantity");
    var order = product[i].innerText +" | "+ price[i].innerText +" | "+ quantity[i].innerText;
    console.log(order);
});

我希望這能解決您的問題

必須是 for 循環而不是 forEach。 它是 HTMLCollection 不是簡單的數組。

 var productRows = document.getElementsByClassName("product-row"); for ( var x = 0; x < productRows.lenght; x++) { var product = productRows[x].querySelector(".product"); var price = productRows[x].querySelector(".price"); var quantity = productRows[x].querySelector(".quantity"); var order = product[i].innerText + " | " + price[i].innerText + " | " + quantity[i].innerText; console.log(order); };
 <div class="product-row"> <div class="product"> some product </div> <div class="price"> some price </div> <div class="quantity"> some quantity </div> </div>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM