Sự cố DOM Javascript

lập trình


Tôi đang cố gắng làm quen với javascript DOM.
Nhưng tôi không thể tìm ra vấn đề.

Hàm sẽ hiển thị tên tôi nhập bằng lời chào, nhưng dù tôi có làm gì thì nó cũng chỉ hiển thị xin chào, ai.

Mã HTML:

<pre>
<form>
    <input type="text" placeholder="name" autocomplete="off" onkeyup="full()" id="fname">
</form>
 <p id="p"></p>

đây là mã js của tôi.

JavaScript
var name = document.getElementById("fname");
var p = document.getElementById("p");
              function full(){
                if (name.value) {
                    p.innerHTML = "hello, ${name.value}";
                    console.log(1);
                }
                else {
                    p.innerHTML = "hello, who";
                    console.log(2);
                }
              }

Những gì tôi đã thử:

Tôi đã thay đổi sự kiện từ oninput thành onkeyup nhưng nhận được kết quả tương tự.

Giải pháp 1

Vấn đề đầu tiên là bạn đang sử dụng một chuỗi thông thường chứ không phải một chuỗi Mẫu chữ[^].

Vấn đề thứ hai đó là name là tài sản trên window sự vật. Khi hàm xử lý sự kiện được gọi, thuộc tính đó sẽ ẩn đi name Biến đổi. Thay đổi biến của bạn thành một cái gì đó như fname thay vì.

JavaScript
const fname = document.getElementById("fname");
const p = document.getElementById("p");

function full() {
    if (fname.value) {
        p.innerHTML = `hello, ${fname.value}`;
    } else {
        p.innerHTML = "hello, who";
    }
}

Thử nghiệm[^]

コメント

タイトルとURLをコピーしました