Web Cơ Bản

Phương thức text() trong jQuery

1) Phương thức text() trong jQuery

- Phương thức text() được dùng để:

  • Lấy "nội dung văn bản" bên trong phần tử.
  • Hoặc thiết lập lại "nội dung văn bản" bên trong phần tử.

- Lưu ý:

  • Đối với trường hợp lấy nội dung văn bản bên trong phần tử thì giá trị trả về sẽ là một chuỗi.
  • Đối với trường hợp thiết lập lại nội dung văn bản bên trong phần tử thì nội dung văn bản mới sẽ thay thế toàn bộ nội dung cũ.

2) Cách sử dụng phương thức text() trong jQuery

- Đối với phương thức text(), chúng ta có ba trường hợp sử dụng tương ứng với ba cú pháp:

2.1) Lấy nội dung văn bản bên trong phần tử

- Dưới đây là cú pháp dùng để lấy nội dung văn bản bên trong phần tử:

$(selector).text();

- Lưu ý: Nếu bộ chọn tìm được nhiều phần tử trùng khớp thì phương thức text() sẽ trả về toàn bộ nội dung văn bản của tất cả các phần tử trùng khớp đó.

2.2) Thiết lập lại nội dung văn bản bên trong phần tử

- Dưới đây là cú pháp dùng để thiết lập lại nội dung văn bản bên trong phần tử:

(cú pháp này thường được sử dụng trong trường hợp bộ chọn chỉ tìm được một phần tử trùng khớp hoặc bạn muốn tất cả các phần tử trùng khớp đều được thiết lập chung một giá trị)

$(selector).text(text);

- Trong đó, tham số "text" là nội dung văn bản mà bạn muốn thiết lập lại cho phần tử.

2.3) Thiết lập lại nội dung văn bản bên trong phần tử (sử dụng hàm)

- Dưới đây là cú pháp dùng để thiết lập lại nội dung văn bản bên trong phần tử sử dụng hàm:

(cú pháp này thường được sử dụng trong trường hợp bộ chọn tìm được nhiều phần tử trùng khớp và bạn muốn mỗi phần tử trùng khớp được thiết lập một giá trị riêng)

$(selector).text(function(index,currenttext){
    return text;
});

- Dưới đây là bảng mô tả ý nghĩa & cách sử dụng các tham số trong cú pháp trên:

function(index,currenttext){
    return text;
}

- Chỉ định một hàm trả về nội dung văn bản mà bạn muốn thiết lập cho các phần tử được chọn.

- Trong đó:

  • Tham số "index" trả về chỉ số của phần tử được chọn trong danh sách các phần tử trùng khớp được tìm thấy.
  • Tham số "currenttext" trả về nội dung văn bản hiện tại bên trong phần tử được chọn.
  • Giá trị "text" là nội dung văn bản mà bạn muốn thiết lập lại cho phần tử được chọn.

3) Một số ví dụ

Ví dụ:

- Lấy nội dung văn bản của tất cả các phần tử có lớp là info


<script>
    $(document).ready(function(){
        $("button").click(function(){
            var content = $(".info").text();
        });
    });
</script>
Xem ví dụ
Ví dụ:

- Thiết lập lại nội dung văn bản cho tất cả các phần tử <p> thành - Lập <u>Trình</u> Web


<script>
    $(document).ready(function(){
        $("button").click(function(){
            $("p").text("- Lập <u>Trình</u> Web");
        });
    });
</script>
Xem ví dụ
Ví dụ:

- Thiết lập lại nội dung văn bản cho tất cả các phần tử <p> (tùy trường hợp)


<script>
    $(document).ready(function(){
        $("button").click(function(){
            $("p").text(function(a,b){
                if(a==0){return "Lập Trình Web";}
                if(a==1){return "Tài liệu học " + b;}
                if(a==2){return b + " & jQuery";}
            });
        });
    });
</script>
Xem ví dụ

4) Điểm giống và khác giữa phương thức text() & html()

- Dưới đây là bảng mô tả điểm giống và khác giữa phương thức text() và html():

text() html()
Điểm giống - Cả hai phương thức này đều được dùng để lấy hoặc thiết lập nội dung bên trong phần tử.
Điểm khác - Phương thức text() chỉ lấy nội dung văn bản, nó sẽ loại bỏ tất cả các thẻ ra khỏi giá trị trả về. - Phương thức html() sẽ lấy tất cả nội dung bên trong phần tử bao gồm các thẻ.
- Nếu bộ chọn tìm được nhiều phần tử trùng khớp thì phương thức text() sẽ lấy nội dung văn bản của tất cả các phần tử trùng khớp đó. - Nếu bộ chọn tìm được nhiều phần tử trùng khớp thì phương thức html() chỉ lấy nội dung bên trong phần tử trùng khớp được tìm thấy đầu tiên.
- Khi thiết lập nội dung cho phần tử thì phương thức text() chỉ có thể thiết lập nội dung văn bản. - Khi thiết lập nội dung cho phần tử thì phương thức html() có thể thiết lập cả nội dung văn bản lẫn các thẻ.