2013-09-22 11 views
7

Tôi đang viết một số javascript để chạy trong một bookmarklet sẽ nhận được văn bản trong một phần tử có một tên lớp nhất định.Nhận văn bản trong getElementsByClassName

Vì vậy, ví dụ

document.getElementsByClassName('price') 

nơi trang web có hoặc ví dụ

<span class="price"> 

    £23 

</span> 

Làm thế nào tôi sẽ đi về nhận được văn bản thực tế trong phạm vi nguyên tố này có một mức giá tên lớp (tức là £ 23 trong ví dụ trên).

+1

Nếu bạn có chỉ là một trong số họ đi trước làm .. 'document.getElementsByClassName ('giá') [0] .innerHTML' khác lặp qua các bộ sưu tập và có được những gì bạn cần. – PSL

Trả lời

13

getElementsByClassName trả về một mảng các phần tử. Đi qua mảng đó và nhận được thuộc tính innerText của mỗi mảng. Ví dụ:

var priceEls = document.getElementsByClassName("price"); 
for (var i = 0; i < priceEls.length; i++) { 
    var price = priceEls[i].innerText; 
    alert("Price: " + price); 
} 

Live Demo: http://jsfiddle.net/YQsBW/