Cách chuyển đổi văn bản trong thẻ <a> ở góc 7


8

Tôi có một nút trên thẻ với dòng chữ "Unreeze". Tôi muốn chuyển nó thành "Freeze" khi nhấp vào nút. Đây là mã ny:

<a class="btn btn-primary full-width" (click)="clickFreeze($event)">
                    <i class="fa fa-plus-circle"></i>Unfreeze</a>

private clickFreeze(event) {
    console.log("event.srcElement.childNodes[1].textContent", event.srcElement.childNodes[1].textContent);
    if(event.srcElement.childNodes[1].textContent =='Unfreeze'){
      event.srcElement.innerText="Freeze and Save";
    } else if(event.srcElement.innerText =='Freeze and Save'){
      event.srcElement.innerText="Unfreeze";
    }
}

Vì một số lý do, nó không hoạt động. event.srcElement.childNodes[1].textContentbằng với "Unreeze" khi tôi điều khiển nó nhưng nó không vào vòng lặp if.


<a class="btn btn-primary full- thong" (click)="clickFreeze($event)"> <i class = "fa fa-plus-circle"> </ i> Unreeze </a>
Yogesh Mali

2
không nghịch với phần tử DOM trực tiếp trong mô hình.
Krishna Prashatt

Câu trả lời:


14

Tôi không chắc tại sao bạn lại sử dụng phương pháp này, bạn chỉ cần chuyển văn bản một cách có điều kiện như thế này -

.html

<a class="btn btn-primary" (click)="isFreeze = !isFreeze">
  <i class="fa fa-plus-circle"></i>
  {{isFreeze ? "Unfreeze" : "Freeze and Save"}}
</a>

.ts

isFreeze: boolean = true;

cảm ơn sự giúp đỡ của bạn nhưng (click) = "clickFreeze () cũng đang làm những thứ khác vì vậy tôi không thể sử dụng (click) =" isFreeze =! isFreeze "
Yogesh Mali

@YogeshMali vâng, bạn có thể chỉ cần gọi hàm như bạn đã nói và làm tương tự ở đó, bạn chắc chắn có thể tùy chỉnh theo yêu cầu của bạn.
Pardeep Jain
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.